23

可能重复:
内部列表中的第一项尽可能有效

可以说我有:

a = [ [1,2], [2,9], [3,7] ]

我想检索每个内部列表的第一个元素:

b = [1,2,3]

无需这样做(我目前的黑客):

for inner in a:
    b.append(inner[0])

我敢肯定它有一个衬里,但我真的不知道我在找什么。

4

1 回答 1

63

只需将您的列表组合更改为:

b = [el[0] for el in a]

或者:

from operator import itemgetter
b = map(itemgetter(0), a)

或者,如果您正在处理“正确的数组”:

import numpy as np
a = [ [1,2], [2,9], [3,7] ]
na = np.array(a)
print na[:,0]
# array([1, 2, 3])

并且zip

print zip(*a)[0]
于 2012-11-02T02:31:34.470 回答