Python迭代元组数据结构中的列表

时间:2014-03-17 17:59:58

标签: python

我有以下数据结构:

data = (['test1','test2','test3'], ['foo1','foo2','foo3'], ['bar1','bar2','bar3'])

我想迭代这个数据结构并创建一个新的元组,它将每个列表的位置1附加到它。我想用

创建一个数据结构
(test1,foo1,bar1), (test2,foo2,bar2), (test3,foo3,bar3)

2 个答案:

答案 0 :(得分:3)

这是一个简单的zip argument unpacking

print zip(*data)

e.g:

>>> data = (['test1','test2','test3'],['foo1','foo2','foo3'],['bar1','bar2','bar3'])
>>> zip(*data)
[('test1', 'foo1', 'bar1'), ('test2', 'foo2', 'bar2'), ('test3', 'foo3', 'bar3')]

答案 1 :(得分:3)

通过zip()解压缩:

>>> data = (['test1','test2','test3'],['foo1','foo2','foo3'],['bar1','bar2','bar3'])
>>> zip(*data)
[('test1', 'foo1', 'bar1'), ('test2', 'foo2', 'bar2'), ('test3', 'foo3', 'bar3')]

另见:Unzipping and the * operator