假设我们有:
a = [[1, 2, 3], [4, 5, 6]]
访问数组的最快方法是什么,这样我们得到每个列表中的第一个元素,而不是循环。
我希望结果给我...... 1,4
答案 0 :(得分:2)
使用zip(* a)
a = [[1, 2, 3], [2, 3, 4]]
result = zip(*a)[0]
print result
答案 1 :(得分:2)
快速简便的方法是提取a[0][0]
和a[1][0]
,但根据您使用的内容,这可能不会一直有效。
答案 2 :(得分:2)
没有循环,你需要像ethg242那样展开循环。这样做的缺点是只能使用a
这是列表理解
[i[0] for i in a]
也可以使用map()
,但这也有一个隐式循环
from operator import itemgetter
map(itemgetter(0), a)
答案 3 :(得分:2)
你可能想要考虑numpy:
>>> import numpy as np
>>> a = [[1, 2, 3], [4, 5, 6]]
>>> b = np.array(a)
>>> b[:,0]
array([1, 4])