如何访问另一个列表中每个列表的第n个元素?

2022-04-05 00:00:00 python indexing list elements

问题描述

这肯定是一个非常基本的问题,所以请原谅我。我有一个这样的列表列表

l = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]

我要将外部列表中每个列表中的第二个值作为另一个列表进行访问

[2, 5, 8, 11]

有没有一步到位的方法?我以前用过很多次MatLab编程,我试过l[:][1],但结果是[4, 5, 6]


解决方案

使用列表理解:

>>> lis = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]
>>> [ x[1] for x in lis]
[2, 5, 8, 11]

使用operator.itemgetter的另一种方式:

>>> from operator import itemgetter
>>> map( itemgetter(1), lis)
[2, 5, 8, 11]

相关文章