假设我有一个包含单个长度元素的列表;
[‘z’,‘x’,‘y’]另一个列表有两个长度元素;
[(‘x’,7),(‘y’,1),(‘z’,5)]如何重新排列第二个列表以便第一个…
第二个列表可以简单地转换为字典,然后列表理解使它变得微不足道:
a = ['z', 'x', 'y'] b = dict([('x', 7), ('y', 1), ('z', 5)]) c = [(key, b[key]) for key in a]
您可以使用此方法:
>>> list1 = ['z', 'x', 'y'] >>> list2 = [('x', 7), ('y', 1), ('z', 5)] >>> dict2 = dict(list2) >>> new_list = [(key, dict2[key]) for key in list1] >>> new_list [('z', 5), ('x', 7), ('y', 1)]