Python 如何从字符串列表中创建第一个字符的列表

Python 如何从字符串列表中创建第一个字符的列表,python,arrays,string,Python,Arrays,String,假设我有一个字符串列表 ['abc' , 'def', 'ghi'] 如何将其转换为数组列表,如 [['a','d','g'],['b','e','h'],['c','f','i']] 您可以使用zip(): 使用列表理解: In [7]: lis=['abc' , 'def', 'ghi'] In [9]: [list(x) for x in zip(*lis)] Out[9]: [['a', 'd', 'g'], ['b', 'e', 'h'], ['c', 'f', 'i']] 使

假设我有一个字符串列表

['abc' , 'def', 'ghi']
如何将其转换为数组列表,如

[['a','d','g'],['b','e','h'],['c','f','i']]
您可以使用
zip()

使用列表理解:

In [7]: lis=['abc' , 'def', 'ghi']

In [9]: [list(x) for x in zip(*lis)]
Out[9]: [['a', 'd', 'g'], ['b', 'e', 'h'], ['c', 'f', 'i']]
使用
map()

您可以使用
zip()

使用列表理解:

In [7]: lis=['abc' , 'def', 'ghi']

In [9]: [list(x) for x in zip(*lis)]
Out[9]: [['a', 'd', 'g'], ['b', 'e', 'h'], ['c', 'f', 'i']]
使用
map()


使用列表理解和
zip

l = ['abc' , 'def', 'ghi']
l = [list(x) for x in zip(*l)]
print l

>>> [['a','d','g'],['b','e','h'],['c','f','i']]

使用列表理解和
zip

l = ['abc' , 'def', 'ghi']
l = [list(x) for x in zip(*l)]
print l

>>> [['a','d','g'],['b','e','h'],['c','f','i']]

到目前为止你试过什么?这应该包括在你的问题中,为我们提供一个帮助你的起点。到目前为止,你做了哪些尝试?这应该包括在您的问题中,为我们提供一个起点,帮助您注意到,如果OP对元组而不是列表(即不会对它们进行变异)感到满意,那么
zip(*lis)
就足够了,这很可能是真的。我通过循环来完成它,没有任何特殊的方法,比如zip。但我想知道python是否有任何特殊的方法。感谢您的建议。另外,请注意,如果OP对元组而不是列表(即不会对它们进行变异)感到满意,那么
zip(*lis)
就足够了,很可能就是这样。它是有效的。我通过循环来完成它,没有任何特殊的方法,比如zip。但我想知道python是否有任何特殊的方法。谢谢你的建议