如何在Python中获取数组的第1、3和5个元素?
有没有什么简单的方法可以在Python中快速获取数组的第1、3和5个元素,比如用a[0,2,4]这样的方式?谢谢。
6 个回答
0
你可以使用,
对列表进行切片操作。
>>> a=[i for i in range(10)]
>>> a[::2]
输出:
[0, 2, 4, 6, 8]
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]
4
切片是实现这个功能最简单的方法。你可以用 [0:5:2] 来进行切片。
>>> range(100)[0:5:2]
[0, 2, 4]
这就相当于说:“从第0个元素开始,到第5个元素(不包括第5个),给我每隔一个的元素。”
5
你可以这样做,这是一种简单的方法,不需要任何导入:
>>> a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
>>> [a[i] for i in (0, 2, 4)]
[1, 3, 5]
7
>>> lst = [1,2,3,4,5,6,7]
>>> import operator
>>> get135 = operator.itemgetter(0, 2, 4)
>>> get135(lst)
(1, 3, 5)