Python切片知识解析


Posted in Python onMarch 06, 2016

切片原型 strs = ‘abcdefg'

Strs[start: end:step]

切片的三个参数分别表开始,结束,步长

第一位下标为0,end位不取,如strs[1:3] = ‘bc'

如果start,end超出现有数组范围,按实际范围截断strs[-100:100]='abcdefg'

Step为空时,缺省值为1

Strs[1:5] = ‘bcde' strs[1:5:2] = ‘bd'

Step为正时,start<end,否则为空

Strs[5:1] = ‘'

Start为空,默认为负无穷 strs[:4] = ‘abcd'

End为空,默认为正无穷 strs[2:] = ‘cdefg'

Strs[:] = ‘abcdefg'

Step为负时, start>end, 否则为空
Strs[1:5:-1] = ‘'

Start为空,默认为正无穷 strs[:2:-1] = ‘gfed'

End为空,默认为负无穷 strs[4::-1] = ‘edcba'

Strs[::-1] = ‘gfedcba'

python 切片

切片操作符是序列名后跟一个方括号,方括号中有一对可选的数字,并用冒号分割。注意这与你使用的索引操作符十分相似。记住数是可选的,而冒号是必须的。

切片操作符中的第一个数(冒号之前)表示切片开始的位置,第二个数(冒号之后)表示切片到哪里结束,第三个数(冒号之后)表示切片间隔数。如果不指定第一个数,Python就从序列首开始。如果没有指定第二个数,则Python会停止在序列尾。注意,返回的序列从开始位置开始 ,刚好在 结束 位置之前结束。即开始位置是包含在序列切片中的,而结束位置被排斥在切片外。

这样,shoplist[1:3]返回从位置1开始,包括位置2,但是停止在位置3的一个序列切片,因此返回一个含有两个项目的切片。类似地,shoplist[:]返回整个序列的拷贝。shoplist[::3]返回位置3,位置6,位置9…的序列切片。

你可以用负数做切片。负数用在从序列尾开始计算的位置。例如,shoplist[:-1]会返回除了最后一个项目外包含所有项目的序列切片,shoplist[::-1]会返回倒序序列切片。

使用Python解释器交互地尝试不同切片指定组合,即在提示符下你能够马上看到结果。序列的神奇之处在于你可以用相同的方法访问元组、列表和字符串。

Python 相关文章推荐
python中的格式化输出用法总结
Jul 28 Python
Python利用operator模块实现对象的多级排序详解
May 09 Python
Python 模拟购物车的实例讲解
Sep 11 Python
python基于twisted框架编写简单聊天室
Jan 02 Python
详解基于django实现的webssh简单例子
Jul 17 Python
python浪漫表白源码
Apr 05 Python
pytorch使用Variable实现线性回归
May 21 Python
使用python批量修改文件名的方法(视频合并时)
Mar 24 Python
基于TensorFlow中自定义梯度的2种方式
Feb 04 Python
关于Python错误重试方法总结
Jan 03 Python
Python绘制词云图之可视化神器pyecharts的方法
Feb 23 Python
Python可视化神器pyecharts之绘制地理图表练习
Jul 07 Python
Django Admin实现上传图片校验功能
Mar 06 #Python
python如何通过protobuf实现rpc
Mar 06 #Python
使用Python保存网页上的图片或者保存页面为截图
Mar 05 #Python
Python发送form-data请求及拼接form-data内容的方法
Mar 05 #Python
Python多线程爬虫简单示例
Mar 04 #Python
使用Python来开发Markdown脚本扩展的实例分享
Mar 04 #Python
使用py2exe在Windows下将Python程序转为exe文件
Mar 04 #Python
You might like
星际争霸 Starcraft 编年史
2020/03/14 星际争霸
PHP性能优化工具篇Benchmark类调试执行时间
2011/12/06 PHP
php动态实现表格跨行跨列实现代码
2012/11/06 PHP
phpize的深入理解
2013/06/03 PHP
PHP转换IP地址到真实地址的方法详解
2013/06/09 PHP
PHP使用PDO连接ACCESS数据库
2015/03/05 PHP
thinkphp 验证码 的使用小结
2017/05/07 PHP
js交换排序 冒泡排序算法(Javascript版)
2014/10/04 Javascript
js实现点击添加一个input节点
2014/12/05 Javascript
JavaScript 对象字面量讲解
2016/06/06 Javascript
json对象转为字符串,当做参数传递时加密解密的实现方法
2016/06/29 Javascript
VUE实现日历组件功能
2017/03/13 Javascript
JavaScript运动框架 多值运动(四)
2017/05/18 Javascript
nodejs使用express获取get和post传值及session验证的方法
2017/11/09 NodeJs
解决Vue2.0 watch对象属性变化监听不到的问题
2018/09/11 Javascript
socket在egg中的使用实例代码详解
2019/05/30 Javascript
layui 地区三级联动 form select 渲染的实例
2019/09/27 Javascript
Python的Django框架中设置日期和字段可选的方法
2015/07/17 Python
浅谈Python浅拷贝、深拷贝及引用机制
2016/12/15 Python
放弃 Python 转向 Go语言有人给出了 9 大理由
2017/10/20 Python
python中的随机函数小结
2018/01/27 Python
详解python分布式进程
2018/10/08 Python
python3.4 将16进制转成字符串的实例
2019/06/12 Python
selenium处理元素定位点击无效问题
2019/06/12 Python
Python异常处理例题整理
2019/07/07 Python
flask框架json数据的拿取和返回操作示例
2019/11/28 Python
python如何查看网页代码
2020/06/07 Python
维氏瑞士军刀英国网站:Victorinox英国
2019/07/04 全球购物
Java面试题:说出如下代码的执行结果
2015/10/30 面试题
经典大学生求职信范文
2014/01/06 职场文书
企业消防安全制度
2014/02/02 职场文书
白酒营销策划方案
2014/08/17 职场文书
学校副校长四风对照检查材料整改措施
2014/09/25 职场文书
2015年小学一年级班主任工作总结
2015/05/21 职场文书
springboot layui hutool Excel导入的实现
2022/03/31 Java/Android
一文简单了解MySQL前缀索引
2022/04/03 MySQL