如何从Python中的数组中获取第1,第3和第5个元素?

时间:2014-04-02 16:46:56

标签: python arrays list

有没有快速的方法从Python中的数组中获取第1,第3和第5个元素,如[0,2,4]?感谢。

6 个答案:

答案 0 :(得分:6)

使用operator.itemgetter

>>> lst = [1,2,3,4,5,6,7]
>>> import operator
>>> get135 = operator.itemgetter(0, 2, 4)
>>> get135(lst)
(1, 3, 5)

答案 1 :(得分:3)

切片是最简单的方法。你想用[0:5:2]切片。

>>> range(100)[0:5:2]
[0, 2, 4]

这相当于说“从元素0开始,直到(但不包括)元素5,给我每个第二个元素。”

答案 2 :(得分:2)

您可以使用切片来实现此目的。

a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
d = a[0:5:2]

print d
[1, 3, 5]

如果您想要推广到其他所有条目,请使用

a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

b = a[::2]

print b
[1, 3, 5, 7, 9]

答案 3 :(得分:1)

你可以这样做,这是一个简单的方法,无需导入:

>>> a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
>>> [a[i] for i in (0, 2, 4)]
[1, 3, 5]

答案 4 :(得分:0)

你可以使用,

在列表上切片操作。

 >>> a=[i for i in range(10)]
 >>> a[::2]

输出:

 [0, 2, 4, 6, 8]

答案 5 :(得分:0)

也许:

v3