python reverse反转部分数组的实例

yipeiwu_com6年前Python基础

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反转部分数组的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python标记语句块使用方法总结

python标记语句块使用方法总结

python标记语句块使用方法,python语言和其它的编程语言有着显著的区别,那就是python对格式的要求非常苛刻,好处就是书写上简易命令,写错了就会自动报错,但实际上标记语块非常容...

Python全局变量操作详解

接触Python时间不长,对有些知识点,掌握的不是很扎实,我个人比较崇尚不管学习什么东西,首先一定回去把基础打的非常扎实了,再往高处走。今天遇到了Python中的全局变量的相关操作,遇到...

Python实现1-9数组形成的结果为100的所有运算式的示例

问题: 编写一个在1,2,…,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性。例如:1 + 2 + 34–5 + 67–8 + 9 =...

python实现两个文件合并功能

python实现两个文件合并功能

本文将会分析一个文件合并的程序,并指出在合并文件过程中需要注意的问题。 下面是需要合并的文件示例: 分析思路: 要将两个文件合并,首先要将文件读到内存中,成为列表。再将列表...

状态机的概念和在Python下使用状态机的教程

什么是状态机? 关于状态机的一个极度确切的描述是它是一个有向图形,由一组节点和一组相应的转移函数组成。状态机通过响应一系列事件而“运行”。每个事件都在属于“当前”节点的转移函数的控制范围...