Python-转置/解压缩功能(zip的反函数)?

我有一个2项元组的列表,我想将它们转换为2个列表,其中第一个包含每个元组中的第一项,第二个包含第二项。

例如:

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直接传递(转换为元组后)外,因此不必担心参数数量太大。

以上是 Python-转置/解压缩功能(zip的反函数)? 的全部内容, 来源链接: utcz.com/qa/420618.html

回到顶部