【发布时间】:2020-09-08 18:04:39
【问题描述】:
我有以下元组列表,其中每个元组由一个列表和两个字符串组成。我希望根据元组中嵌套列表的第二列对元组列表进行排序。 示例数组:
array = [([45, 56, '-'], 'CGUCAUAAAGUA', 'MKYC'), ([24, 38, '-'], 'GUAAGGUUUGCCGUA', 'MPFGM'), ([6, 26, '-'], 'CCCGGGGUACACAGUAAUGUA', 'M**HMGP')]
预期输出:
sortedTuples = [([6, 26, '-'], 'CCCGGGGUACACAGUAAUGUA', 'M**HMGP'), ([24, 38, '-'], 'GUAAGGUUUGCCGUA', 'MPFGM'), ([45, 56, '-'], 'CGUCAUAAAGUA', 'MKYC')]
作为26 < 38 < 56。
我已经尝试过代码:
sortedTuples = [sorted(list1, key = lambda x: x[1]) for list1, str1, str2 in array]
我得到了错误:
TypeError: 'int' object is not subscriptable
任何帮助将不胜感激。
【问题讨论】:
-
sorted(array,key=lambda x:x[0][1]) -
谢谢你,这有效。我将阅读如何在未来使用 lambda!
标签: python list sorting tuples