Python切片操作实例分析


Posted in Python onMarch 16, 2018

本文实例讲述了Python切片操作。分享给大家供大家参考,具体如下:

在很多编程语言中,针对字符串提供了截取函数,其实目的就是对字符串切片。Python没有针对字符串的截取函数,只需要切片操作就可以完成。

切片操作符是序列名后跟一个方括号,方括号中有3个可选的数字,并用冒号分割,数是可选的,而冒号是必须的

切片操作符中的第一个数表示切片开始的位置,第二个数表示切片到哪里结束,第三个数表示切片步长

如果不指定第一个数,Python就从序列首开始如果没有指定第二个数,则Python会停止在序列尾如果没有指定第三个数,则步长默认为1

注意返回的序列从开始位置开始 ,刚好在 结束 位置之前结束。即开始位置是包含在序列切片中的,而结束位置被排斥在切片外,构成了一个前闭后开区间 [ )

例如:

1》正向切片(步长是正整数

>>> s='love python!'
>>> s[2:9:2] #切片区间 [2,9),步长是2
'v yh'
>>> s[:5] #切片区间 [0,5),步长默认是1
'love '
>>> s[4:] #切片区间 [4,len(s)),步长默认是1
' python!'
>>> s[:] #切片区间 [0,len(s)),步长是1,返回整个序列的拷贝
'love python!'
>>> s[::2] #切片区间是 [0,len(s)),步长是2
'lv yhn'

Python序列倒数第一个元素的索引是-1,python同样支持负数索引切片。如:

>>> s
'love python!'
>>> s[-5:-2] #切片区间 [-5,-2),步长默认是1
'tho'
>>> s[:-1] #除了最后一个元素,其他的元素全部返回
'love python'
>>> s[-8::2] #切片区间 [-8,-1],步长是2
' yhn'

2》反向切片(步长是负数),如:

>>> s
'love python!'
>>> s[9:2:-1]
'ohtyp e'
>>> s[-1::-1] #返回序列的逆序序列
'!nohtyp evol'
>>> s[::-1] #返回序列的逆序序列
'!nohtyp evol'

另外,切片除了可以作用于字符串,也可以作用于元组和列表

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中声明只包含一个元素的元组数据方法
Aug 25 Python
Python中使用item()方法遍历字典的例子
Aug 26 Python
python操作 hbase 数据的方法
Dec 18 Python
Python结巴中文分词工具使用过程中遇到的问题及解决方法
Apr 15 Python
浅谈numpy中linspace的用法 (等差数列创建函数)
Jun 07 Python
python机器学习理论与实战(六)支持向量机
Jan 19 Python
浅谈Python Opencv中gamma变换的使用详解
Apr 02 Python
python覆盖写入,追加写入的实例
Jun 26 Python
在django中实现页面倒数几秒后自动跳转的例子
Aug 16 Python
在python中使用nohup命令说明
Apr 16 Python
keras K.function获取某层的输出操作
Jun 29 Python
python实现A*寻路算法
Jun 13 Python
Python+request+unittest实现接口测试框架集成实例
Mar 16 #Python
Python基础教程之内置函数locals()和globals()用法分析
Mar 16 #Python
python xlsxwriter库生成图表的应用示例
Mar 16 #Python
Python cookbook(数据结构与算法)实现对不原生支持比较操作的对象排序算法示例
Mar 15 #Python
python简单商城购物车实例代码
Mar 15 #Python
Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例
Mar 15 #Python
python批量实现Word文件转换为PDF文件
Mar 15 #Python
You might like
关于mysql字符集设置了character_set_client=binary 在gbk情况下会出现表描述是乱码的情况
2013/01/06 PHP
WordPress中制作导航菜单的PHP核心方法讲解
2015/12/11 PHP
PHP实现打包zip并下载功能
2018/06/12 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
2018/12/08 PHP
php往mysql中批量插入数据实例教程
2018/12/12 PHP
jQuery 表单验证扩展代码(一)
2010/10/11 Javascript
javascript采用数组实现tab菜单切换效果
2012/12/12 Javascript
用jquery模仿的a的title属性(兼容ie6/7)
2013/01/21 Javascript
6款经典实用的jQuery小插件及源码(对话框/提示工具等等)
2013/02/04 Javascript
JavaScript中的toLocaleDateString()方法使用简介
2015/06/12 Javascript
JS库中的Particles.js在vue上的运用案例分析
2017/09/13 Javascript
jQuery获取复选框选中的当前行的某个字段的值
2017/09/15 jQuery
jQuery读取本地的json文件(实例讲解)
2017/10/31 jQuery
jquery animate动画持续运动的实例
2017/11/29 jQuery
解决vue this.$forceUpdate() 处理页面刷新问题(v-for循环值刷新等)
2018/07/26 Javascript
vue.js 实现评价五角星组件的实例代码
2018/08/13 Javascript
浅谈Angular7 项目开发总结
2018/12/19 Javascript
layui 图片上传+表单提交+ Spring MVC的实例
2019/09/21 Javascript
es6中let和const的使用方法详解
2020/02/24 Javascript
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
OpenLayers3实现测量功能
2020/09/25 Javascript
[19:26]TNC vs EG (BO3)
2018/06/07 DOTA
[01:08:32]DOTA2-DPC中国联赛 正赛 DLG vs PHOENIX BO3 第二场 1月18日
2021/03/11 DOTA
Python实现的弹球小游戏示例
2017/08/01 Python
python实现决策树
2017/12/21 Python
用python一行代码得到数组中某个元素的个数方法
2019/01/28 Python
银行出纳岗位职责
2013/11/25 职场文书
个人求职信范文分享
2014/01/06 职场文书
高三学习决心书
2014/03/11 职场文书
工作决心书
2014/03/11 职场文书
副总经理岗位职责
2014/03/16 职场文书
党员学习正风肃纪思想汇报
2014/09/12 职场文书
作风建设剖析材料
2014/10/06 职场文书
2015年班主任个人工作总结
2015/03/31 职场文书
2021年最新用于图像处理的Python库总结
2021/06/15 Python
一篇文章带你深入了解Mysql触发器
2021/08/02 MySQL