我有这个数据结构:

[((u'die', u'die'), (u'welt', u'WELT')),
 ((u'welt', u'WELT'), (u'ist', u'ist'))]

我怎样才能以最pythonic的方式将上面的结构转换为下面的结构?带 zipper ?
[((u'die', u'welt'), (u'die', u'WELT')),
 ((u'welt', u'ist'), (u'WELT', u'ist'))]

最佳答案

您可以为此使用 zip() 函数和列表理解,如 -

>>> lst = [((u'die', u'die'), (u'welt', u'WELT')),
...  ((u'welt', u'WELT'), (u'ist', u'ist'))]
>>>
>>> [tuple(zip(*x)) for x in lst]
[(('die', 'welt'), ('die', 'WELT')), (('welt', 'ist'), ('WELT', 'ist'))]

关于python - 如何以最 Pythonic 的方式使用 Python 转换元组列表(也许使用 zip),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32517572/

10-12 23:30