如何访问另一个列表中每个列表的第n个元素?
问题描述
这肯定是一个非常基本的问题,所以请原谅我。我有一个这样的列表列表
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]
相关文章