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 30 Python
浅谈pandas中shift和diff函数关系
Apr 08 Python
python使用folium库绘制地图点击框
Sep 21 Python
Python3非对称加密算法RSA实例详解
Dec 06 Python
python分块读取大数据,避免内存不足的方法
Dec 10 Python
Django使用AJAX调用自己写的API接口的方法
Mar 06 Python
python os.path.isfile()因参数问题判断错误的解决
Nov 29 Python
Python函数参数类型及排序原理总结
Dec 19 Python
python实现大战外星人小游戏实例代码
Dec 26 Python
Python selenium文件上传下载功能代码实例
Apr 13 Python
Python Django中间件使用原理及流程分析
Jun 13 Python
Python中for后接else的语法使用
May 18 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
《雄兵连》《烈阳天道》真的来了
2020/07/13 国漫
WINDOWS 2000下使用ISAPI方式安装PHP
2006/09/05 PHP
PHP 文件上传源码分析(RFC1867)
2009/10/30 PHP
详谈php中 strtr 和 str_replace 的效率问题
2017/05/14 PHP
Ecshop 后台添加新功能栏目及管理权限设置教程
2017/11/21 PHP
Js 获取当前日期时间及其它操作实现代码
2021/03/04 Javascript
Extjs入门之动态加载树代码
2010/04/09 Javascript
基于jquery打造的百分比动态色彩条插件
2012/09/19 Javascript
javascript类型系统 Array对象学习笔记
2016/01/09 Javascript
Bootstrap开关(switch)控件学习笔记分享
2016/05/30 Javascript
JS获取当前页面名称的简单实例
2016/08/19 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
2016/09/19 Javascript
BootStrap实现手机端轮播图左右滑动事件
2016/10/13 Javascript
详解在Vue中有条件地使用CSS类
2017/09/30 Javascript
vue 设置路由的登录权限的方法
2018/07/03 Javascript
js使用swiper实现层叠轮播效果实例代码
2018/12/12 Javascript
微信小程序位置授权处理方法
2019/06/13 Javascript
layui实现二维码弹窗、并下载到本地的方法
2019/09/25 Javascript
Vue+ElementUI table实现表格分页
2019/12/14 Javascript
Python内置函数bin() oct()等实现进制转换
2012/12/30 Python
使用Python对SQLite数据库操作
2017/04/06 Python
Python标准库之itertools库的使用方法
2017/09/07 Python
win7下 python3.6 安装opencv 和 opencv-contrib-python解决 cv2.xfeatures2d.SIFT_create() 的问题
2019/10/24 Python
python redis存入字典序列化存储教程
2020/07/16 Python
python Tornado框架的使用示例
2020/10/19 Python
基于pycharm 项目和项目文件命名规则的介绍
2021/01/15 Python
HTML5新增加标签和功能概述
2016/09/05 HTML / CSS
中专毕业生自我鉴定
2013/11/21 职场文书
技校生自我鉴定
2013/12/08 职场文书
加拿大探亲邀请信
2014/01/28 职场文书
学习两会精神心得范文
2014/03/17 职场文书
公司开业庆典主持词
2014/03/21 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
高中社区服务活动报告
2015/02/05 职场文书
使用 Apache 反向代理的设置技巧
2022/01/18 Servers
vue 给数组添加新对象并赋值
2022/04/20 Vue.js