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 相关文章推荐
仅用500行Python代码实现一个英文解析器的教程
Apr 02 Python
使用Protocol Buffers的C语言拓展提速Python程序的示例
Apr 16 Python
学习python类方法与对象方法
Mar 15 Python
Django实现支付宝付款和微信支付的示例代码
Jul 25 Python
Python字符串逆序输出的实例讲解
Feb 16 Python
详解Python中is和==的区别
Mar 21 Python
Django框架视图函数设计示例
Jul 29 Python
解决python明明pip安装成功却找不到包的问题
Aug 28 Python
python 实现dict转json并保存文件
Dec 05 Python
python itsdangerous模块的具体使用方法
Feb 17 Python
Python读取配置文件(config.ini)以及写入配置文件
Apr 08 Python
python爬虫用request库处理cookie的实例讲解
Feb 20 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处理json时中文问题的解决方法
2011/04/12 PHP
PHP GD库生成图像的几个函数总结
2014/11/19 PHP
微信公众平台开发关注及取消关注事件的方法
2014/12/23 PHP
laravel学习教程之关联模型
2016/07/30 PHP
PHP实现的登录,注册及密码修改功能分析
2016/11/25 PHP
PHP ADODB生成下拉列表框功能示例
2018/05/29 PHP
PHP观察者模式示例【Laravel框架中有用到】
2018/06/15 PHP
JavaScript 大数据相加的问题
2011/08/03 Javascript
Javascript写入txt和读取txt文件示例
2014/02/12 Javascript
Nodejs学习笔记之NET模块
2015/01/13 NodeJs
javascript 常见功能汇总
2015/06/11 Javascript
深入理解JavaScript程序中内存泄漏
2016/03/17 Javascript
jquery文字填写自动高度的实现方法
2016/11/07 Javascript
Javascript中call,apply,bind方法的详解与总结
2016/12/12 Javascript
图片懒加载插件实例分享(含解析)
2017/01/09 Javascript
详解Angular.js数据绑定时自动转义html标签及内容
2017/03/30 Javascript
详解vue-cli3 中跨域解决方案
2019/04/10 Javascript
在element-ui的select下拉框加上滚动加载
2019/04/18 Javascript
在微信小程序中渲染HTML内容3种解决方案及分析与问题解决
2020/01/12 Javascript
原生JS实现拖拽效果
2020/12/04 Javascript
在Python的Django框架中使用通用视图的方法
2015/07/21 Python
tensorflow1.0学习之模型的保存与恢复(Saver)
2018/04/23 Python
Python爬虫包BeautifulSoup学习实例(五)
2018/06/17 Python
python实现浪漫的烟花秀
2019/01/30 Python
Python3.5 Pandas模块之DataFrame用法实例分析
2019/04/23 Python
python接口调用已训练好的caffe模型测试分类方法
2019/08/26 Python
浅谈图像处理中掩膜(mask)的意义
2020/02/19 Python
Python中的xlrd模块使用原理解析
2020/05/21 Python
Omio荷兰:预订火车、巴士和机票
2018/11/04 全球购物
售后主管岗位职责
2013/12/08 职场文书
狼和鹿教学反思
2014/02/05 职场文书
终止合同协议书
2014/04/17 职场文书
卫生标语大全
2014/06/21 职场文书
2014年图书馆工作总结
2014/11/25 职场文书
邹越演讲观后感
2015/06/15 职场文书
Golang Gob编码(gob包的使用详解)
2021/05/07 Golang