Tom*_*gal 5 python nested-lists
我有一个嵌套列表,如下所示:
A = [('a', 'b', 'c'),
('d', 'e', 'f'),
('g', 'h', 'i')]
Run Code Online (Sandbox Code Playgroud)
我试图使用代码打印每个列表的第一个元素:
A = [('a', 'b', 'c'), ('d', 'e', 'f'), ('g', 'h', 'i')]
print A[:][0]
Run Code Online (Sandbox Code Playgroud)
但我得到以下输出:
('a', 'b', 'c')
Run Code Online (Sandbox Code Playgroud)
所需输出:
('a', 'd', 'g')
Run Code Online (Sandbox Code Playgroud)
如何在Python中获得此输出?
A[:]只需创建整个列表的副本,然后您将获得0该副本的元素.
你需要在这里使用列表理解:
[tup[0] for tup in A]
Run Code Online (Sandbox Code Playgroud)
获取列表,或使用tuple()生成器表达式来获取元组:
tuple(tup[0] for tup in A)
Run Code Online (Sandbox Code Playgroud)
演示:
>>> A = [('a', 'b', 'c'), ('d', 'e', 'f'), ('g', 'h', 'i')]
>>> [tup[0] for tup in A]
['a', 'd', 'g']
>>> tuple(tup[0] for tup in A)
('a', 'd', 'g')
Run Code Online (Sandbox Code Playgroud)