【发布时间】:2014-01-14 10:49:25
【问题描述】:
如何按第二个元素拆分元组列表?
我可以通过 2 个列表理解来做到这一点:
tup = [('x',1),('y',2),('z',1)]
ones = [i for i in tup if i[1] == 1]
twos = [i for i in tup if i[1] == 2]
但是有没有办法避免循环遍历列表两次?像这样?
ones, twos = [], []
for i in tup:
if i[1] == 1:
ones.append(i)
if i[1] == 2:
twos.append(i)
还有其他方法吗?
【问题讨论】:
标签: python filter tuples list-comprehension