我的代码正在获取多个元组的列表。元组包含两行。第一行是一个单词,第二行是这个单词的编号。这种列表的一个例子是label_info:
label_info = [('label', '2'),
('text', '1'),
('string', '3')]
label_info以随机顺序排列元组,忽略这些元组中的单词编号。我需要解决这个问题并按单词编号的升序排列列表中的元组:
label_info = [('text', '1'),
('label', '2'),
('string', '3')]
我做了一个排序算法label_info。它有效,但对我来说似乎太大了。有一种感觉,一切都可以轻松得多,但我不知道如何。我无法用简单的字典替换元组列表。请告诉我是否可以优化列表的排序?
label_info = [('label', '2'),
('text', '1'),
('string', '3')]
numbers = []
for label in label_info:
numbers.append(int(label[1]))
numbers.sort()
label_info_2 = []
for number in numbers:
for label in label_info:
if label[1] == str(number):
label_info_2.append(label)
print(label_info_2)
您可以使用标准排序功能sorted: