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实现一个音乐检索器的功能
Nov 15 Python
深入学习Python中的上下文管理器与else块
Aug 27 Python
解决PyCharm import torch包失败的问题
Oct 13 Python
为什么str(float)在Python 3中比Python 2返回更多的数字
Oct 16 Python
Django跨域请求CSRF的方法示例
Nov 11 Python
python 类的继承 实例方法.静态方法.类方法的代码解析
Aug 23 Python
通过python 执行 nohup 不生效的解决
Apr 16 Python
pandas数据选取:df[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[]
Apr 24 Python
Tensorflow加载Vgg预训练模型操作
May 26 Python
Django2.1.7 查询数据返回json格式的实现
Dec 29 Python
使用Django的JsonResponse返回数据的实现
Jan 15 Python
python利用opencv实现颜色检测
Feb 23 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
PHP file_get_contents 函数超时的几种解决方法
2009/07/30 PHP
php中根据变量的类型 选择echo或dump
2012/07/05 PHP
解析CI即CodeIgniter框架在Nginx下的重写规则
2013/06/03 PHP
php遍历目录方法小结
2015/03/10 PHP
php数字每三位加逗号的功能函数
2015/10/22 PHP
Laravel5中Cookie的使用详解
2017/05/03 PHP
Prototype使用指南之string.js
2007/01/10 Javascript
javascript 命名规则 变量命名规则
2010/02/25 Javascript
jqPlot 图表中文API使用文档及源码和在线示例
2012/02/07 Javascript
JS 如何获取radio选中后的值及不选择取radio的值
2013/10/28 Javascript
JS操作XML实例总结(加载与解析XML文件、字符串)
2015/12/08 Javascript
AngularJS控制器继承自另一控制器
2016/05/09 Javascript
seajs学习教程之基础篇
2016/10/20 Javascript
Vue.js系列之项目搭建(1)
2017/01/03 Javascript
js实现消息滚动效果
2017/01/18 Javascript
Bootstrap3多级下拉菜单
2017/02/24 Javascript
js上下视差滚动简单实现代码
2017/03/07 Javascript
vue v-on监听事件详解
2017/05/17 Javascript
vue移动端路由切换实例分析
2018/05/14 Javascript
ExtJs使用自定义插件动态保存表头配置(隐藏或显示)
2018/09/25 Javascript
vue中keep-alive组件的入门使用教程
2019/06/06 Javascript
解决Antd Table表头加Icon和气泡提示的坑
2020/11/17 Javascript
Python bsddb模块操作Berkeley DB数据库介绍
2015/04/08 Python
Python常用的内置序列结构(列表、元组、字典)学习笔记
2016/07/08 Python
Python实现Linux中的du命令
2017/06/12 Python
Python实现的爬取网易动态评论操作示例
2018/06/06 Python
python简单验证码识别的实现方法
2019/05/10 Python
python连接mysql数据库并读取数据的实现
2020/09/25 Python
Python实例教程之检索输出月份日历表
2020/12/16 Python
欧舒丹加拿大官网:L’Occitane加拿大
2017/10/29 全球购物
StubHub中国:购买和出售全球活动门票
2020/01/01 全球购物
Yahoo-PHP面试题2
2014/12/06 面试题
实习老师离校感言
2014/02/03 职场文书
[有人@你]你有一封绿色倡议书,请查收!
2019/07/18 职场文书
详解Mysql和Oracle之间的误区
2021/05/18 MySQL
pytorch finetuning 自己的图片进行训练操作
2021/06/05 Python