引用2d列表中每个列表的第i个元素

kru*_*kin 1 python map subscript

拿一个2d列表.我想创建一个新列表,只包含每个列表中的第i个元素.做这个的最好方式是什么?

我有:

 map(lambda x: x[i], l)
Run Code Online (Sandbox Code Playgroud)

这是一个例子

 >>> i = 0
 >>> l = [[1,10],[2,20],[3,30]]
 >>> map(lambda x: x[i], l)
 [1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

FMc*_*FMc 5

使用列表理解:

i = 1
data = [[1,10],[2,20],[3,30]]
result = [d[i] for d in data]  # [10, 20, 30]
Run Code Online (Sandbox Code Playgroud)

还可以在列表理解与地图上查看此问题.