如何在python中转置嵌套列表

如何在python中转置嵌套列表,python,python-3.x,list,Python,Python 3.x,List,我有一张这样的清单 [('a1','b1','c1'),('a2','b2','c2'),('a3','b3','c3'),('a4','b4','c4')] 我想从上面的列表中得到这样的记录 ['a1','a2','a3','a4'] ['b1','b2','b3','b4'] ['c1','c2','c3','c4'] 我是python新手,所以请告诉我任何建议都会对我有帮助。您可以通过使用列表来实现这一点 list = [('a1','b1','c1'),('a2','b2','c2'

我有一张这样的清单

[('a1','b1','c1'),('a2','b2','c2'),('a3','b3','c3'),('a4','b4','c4')]
我想从上面的列表中得到这样的记录

['a1','a2','a3','a4']
['b1','b2','b3','b4']
['c1','c2','c3','c4']

我是python新手,所以请告诉我任何建议都会对我有帮助。

您可以通过使用列表来实现这一点

list = [('a1','b1','c1'),('a2','b2','c2'),('a3','b3','c3'), ('a4 ', 'b4', 'c4']

a = [x[0] for x in list]
b = [x[1] for x in list]
c = [x[2] for x in list]

如果打印
a、b、c
,您将获得以下输出:

['a1', 'a2', 'a3', 'a4']
['b1', 'b2', 'b3', 'b4']
['c1', 'c2', 'c3', 'c4']

这被称为转置,您可以这样做:

lst = [('a1','b1','c1'),('a2','b2','c2'),('a3','b3','c3'),('a4','b4','c4')]
transposed_lst = list(zip(*lst))
transposed_lst
计算结果为:

[('a1', 'a2', 'a3', 'a4'), ('b1', 'b2', 'b3', 'b4'), ('c1', 'c2', 'c3', 'c4')]

'abc…4'
在哪里?我已经更新了。@jizhaosama
[在zip(*l)中列出(i)for i]
?有什么建议吗?请您需要
zip
<代码>a=[('a1','b1','c1'),('a2','b2','c2'),('a3','b3','c3'),('a4','b4','c4');打印(列表(zip(*a))最后你也应该
*转置_lst
,因为预期的答案不是tuplesHi@Hedy的列表。你能帮我吗?我有一个列表=['a,b,c,d','e,f,g,h','I,j,k,l'],我想得到一个这样的列表,修改后的列表=['a','b','c','d']['e','f','g','h']['I','j','k','l']]嗨@hedy,你能帮我一下吗?我有一个列表=['a,b,c,d','e,f,g,h','I,j,k,l'],我想得到这样一个更改的列表=['a','b','c','d']['e','f','g','h']['I','j','k','l'],请帮助我,因为它帮助我学习东西。谢谢