我有一个清单:
[(160, 177), (162, 169), (163, 169), (166, 173), (166, 176), (166, 177), (169, 176), (169, 177)]
我想要这个列表的倒数,所以它变成:
[(177, 160), (169, 162), (169, 163), (173, 166), (176, 166), (177, 166), (176, 169), (177, 169)]
我认为你可以做类似list1[:-1]或类似的事情。
在我看来,明确地反转这些对更干净:
[(snd, fst) for fst, snd in thelist]
a=[(160, 177), (162, 169), (163, 169), (166, 173), (166, 176), (166, 177), (169, 176), (169, 177)]
b=[e[::-1] for e in a]
print b
此 Bunk 中的可运行代码 - http://codebunk.com/bunk#-It1THfMsVDWUQMq8eRT
您也可以使用map并且在这种情况下reversed更喜欢基于列表理解的解决方案来执行此操作,因为与版本
中的 2 相比,它只需要一个循环map。
In [24]: lis=[(160, 177), (162, 169), (163, 169), (166, 173), (166, 176), (166, 177), (169, 176), (169, 177)]
In [26]: map(tuple,map(reversed,lis)) #use itertools.imap for large lists
Out[26]:
[(177, 160),
(169, 162),
(169, 163),
(173, 166),
(176, 166),
(177, 166),
(176, 169),
(177, 169)]