python reverse反转部分数组的实例

python3中,list有个reverse函数,用来反转列表元素,但是如果想要反转部分元素呢?

a = [1,2,3,4,5]
a[0:3].reverse() # not work!!!
print(a)
>>[1, 2, 3, 4, 5]

a = [1,2,3,4,5]
c = a[0:3]
c.reverse()  #曲线救国方法,就是开销大了点
a[:3] = c[:]
print(a)
>>[3, 2, 1, 4, 5]

a = [1,2,3,4,5]
a[0:3] = list(reversed(a[0:3])) #work!注意reversed返回的是一个iterator(迭代器),反转前3个数
print(a)
>>[3, 2, 1, 4, 5]

a = [1,2,3,4,5]
a[0:3] = a[2::-1]  #work! 参数略复杂,[]中第一个参数是要反转的最后一个数的index,比如这里要翻转前三个数字 1 2 3,
        #那么第一个参数就是3的index,所以这里是2,第二个参数是要反转的第一个数的index,如果从第一个数开始那么可以省略
        #最后一个参数是-1,表示反序
print(a)
>>[3, 2, 1, 4, 5]

以上这篇python reverse反转部分数组的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持来客网。