📜  Python|在列表中连续排列元组

📅  最后修改于: 2022-05-13 01:55:29.493000             🧑  作者: Mango

Python|在列表中连续排列元组

有时,在使用元组列表时,我们可能需要这样一种情况,即我们要求一个元组从前一个元组的末尾开始,即每个元组的元素 0 应该等于元组列表中元组的结束元素。这种类型的问题和排序在竞争性编程中很有用。让我们讨论一下解决这个问题的方法。

方法:使用循环 + dict()
通过将元组容器列表转换为字典可以轻松解决此任务,然后很容易访问键的值并相应地排列它们,以便以一个元组元素从另一个元素的结尾开始的方式进行排序。

# Python3 code to demonstrate working of
# Arranging Tuples consecutively in list
# using loop + dict()
  
# initialize list
test_list = [(5, 6), (11, 8), (6, 11), (8, 9) ]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Arranging Tuples consecutively in list
# using loop + dict()
temp = dict(test_list)  
ele = test_list[0][0]  
res = [] 
for _ in range(len(test_list)):
    res.append((ele, temp[ele]))
    ele = temp[ele]
  
# printing result
print("The arranged list is : " + str(res))
输出 :
The original list is : [(5, 6), (11, 8), (6, 11), (8, 9)]
The arranged list is : [(5, 6), (6, 11), (11, 8), (8, 9)]