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多线程编程简单介绍
Apr 13 Python
Python读取Excel的方法实例分析
Jul 11 Python
python使用mysql数据库示例代码
May 21 Python
初学python的操作难点总结(新手必看篇)
Aug 03 Python
python2 与 pyhton3的输入语句写法小结
Sep 10 Python
python实现字符串完美拆分split()的方法
Jul 16 Python
python编写计算器功能
Oct 25 Python
python pyenv多版本管理工具的使用
Dec 23 Python
详解PyQt5信号与槽的几种高级玩法
Mar 24 Python
python实现将中文日期转换为数字日期
Jul 14 Python
python 如何实现遗传算法
Sep 22 Python
python 实现压缩和解压缩的示例
Sep 22 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
PHP 函数执行效率的小比较
2010/10/17 PHP
PHP学习笔记之二 php入门知识
2011/01/12 PHP
php对数组内元素进行随机调换的方法
2015/05/12 PHP
php命名空间设计思想、用法与缺点分析
2019/07/17 PHP
Javascript中的常见排序算法
2007/03/27 Javascript
更正确的asp冒泡排序
2007/05/24 Javascript
多种方法判断Javascript对象是否存在
2013/09/22 Javascript
setInterval与clearInterval的使用示例代码
2014/01/28 Javascript
原生JS绑定滑轮滚动事件兼容常见浏览器
2014/06/30 Javascript
jQuery制作拼图小游戏
2015/01/12 Javascript
jQuery插件制作之全局函数用法实例
2015/06/01 Javascript
基于jQuery倾斜打开侧边栏菜单特效代码
2015/09/15 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
IScroll5实现下拉刷新上拉加载的功能实例
2017/08/11 Javascript
r.js来合并压缩css文件的示例
2018/04/26 Javascript
vue实现重置表单信息为空的方法
2018/09/29 Javascript
HTML元素拖拽功能实现的完整实例
2020/12/04 Javascript
[01:21:58]守擂赛DOTA2第一周决赛
2020/04/22 DOTA
python使用paramiko实现远程拷贝文件的方法
2016/04/18 Python
Python之web模板应用
2017/12/26 Python
基于Django URL传参 FORM表单传数据 get post的用法实例
2018/05/28 Python
基于python实现百度翻译功能
2019/05/09 Python
python中将两组数据放在一起按照某一固定顺序shuffle的实例
2019/07/15 Python
Python有参函数使用代码实例
2020/01/06 Python
Python爬虫回测股票的实例讲解
2021/01/22 Python
CSS3实现水平居中、垂直居中、水平垂直居中的实例代码
2020/02/27 HTML / CSS
加拿大在线旅游公司:Flighthub
2019/03/11 全球购物
学校岗位设置方案
2014/01/16 职场文书
大二学生学习个人自我评价
2014/01/19 职场文书
圣诞节活动策划方案
2014/06/09 职场文书
课外活动总结范文
2014/07/09 职场文书
幼儿园六一主持词开场白
2015/05/28 职场文书
初婚未育证明样本
2015/06/18 职场文书
网络安全倡议书(3篇)
2019/09/18 职场文书
血轮眼轮回眼特效 html+css
2021/03/31 HTML / CSS
Redis入门基础常用操作命令整理
2022/06/01 Redis