我有一个两项元组的列表,我想将它们转换为两个列表,其中第一个列表包含每个元组中的第一项,第二个列表包含第二项.
For example:个
original = [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
# and I want to become...
result = (['a', 'b', 'c', 'd'], [1, 2, 3, 4])
有没有一个内置函数可以做到这一点?
我有一个两项元组的列表,我想将它们转换为两个列表,其中第一个列表包含每个元组中的第一项,第二个列表包含第二项.
For example:个
original = [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
# and I want to become...
result = (['a', 'b', 'c', 'd'], [1, 2, 3, 4])
有没有一个内置函数可以做到这一点?
zip
是它自己的反面!只要你使用特殊操作员.
>>> zip(*[('a', 1), ('b', 2), ('c', 3), ('d', 4)])
[('a', 'b', 'c', 'd'), (1, 2, 3, 4)]
其工作方式是使用以下参数调用zip
:
zip(('a', 1), ('b', 2), ('c', 3), ('d', 4))
…除了参数被直接传递到zip
(在转换成元组之后),所以不必担心参数的数量变得太大.