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实现把json格式转换成文本或sql文件
Jul 10 Python
详解Python使用tensorflow入门指南
Feb 09 Python
基于Python实现用户管理系统
Feb 26 Python
浅析Python 实现一个自动化翻译和替换的工具
Apr 14 Python
Python基于机器学习方法实现的电影推荐系统实例详解
Jun 25 Python
python 五子棋如何获得鼠标点击坐标
Nov 04 Python
python爬虫开发之使用Python爬虫库requests多线程抓取猫眼电影TOP100实例
Mar 10 Python
Python + selenium + crontab实现每日定时自动打卡功能
Mar 31 Python
如何在 Matplotlib 中更改绘图背景的实现
Nov 26 Python
Python 中random 库的详细使用
Jun 03 Python
Python re.sub 反向引用的实现
Jul 07 Python
python中tkinter复选框使用操作
Nov 11 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面向对象全攻略 (十五) 多态的应用
2009/09/30 PHP
基于Zookeeper的使用详解
2013/05/02 PHP
mysql_connect localhost和127.0.0.1的区别(网络层阐述)
2015/03/26 PHP
SAE实时日志接口SDK用法示例
2016/10/09 PHP
php实现统计二进制中1的个数算法示例
2018/01/23 PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
2020/04/14 PHP
jQuery 1.0.4 - New Wave Javascript(js源文件)
2007/01/15 Javascript
070823更新的一个[消息提示框]组件 兼容ie7
2007/08/29 Javascript
jQuery的3种请求方式$.post,$.get,$.getJSON
2014/03/28 Javascript
Javascript基础知识(一)核心基础语法与事件模型
2014/09/29 Javascript
Javascript学习笔记之数组的构造函数
2014/11/23 Javascript
JavaScript中使用自然对数ln的方法
2015/06/14 Javascript
jQuery绑定自定义事件的魔法升级版
2016/06/30 Javascript
js仿京东轮播效果 选项卡套选项卡使用
2017/01/12 Javascript
微信小程序实战之自定义toast(6)
2017/04/18 Javascript
Vue.js 2.5新特性介绍(推荐)
2017/10/24 Javascript
深入理解Angularjs 脏值检测
2018/10/12 Javascript
微信小程序数据统计和错误统计的实现方法
2019/06/26 Javascript
Vue快速实现通用表单验证的方法
2020/02/24 Javascript
[02:19]2014DOTA2国际邀请赛 专访820少年们一起去追梦吧
2014/07/14 DOTA
Python中模块string.py详解
2017/03/12 Python
Python排序搜索基本算法之归并排序实例分析
2017/12/08 Python
如何通过50行Python代码获取公众号全部文章
2019/07/12 Python
python socket 聊天室实例代码详解
2019/11/14 Python
python Autopep8实现按PEP8风格自动排版Python代码
2021/03/02 Python
VSCode 自定义html5模板的实现
2019/12/05 HTML / CSS
香港No.1得奖零食网:香港零食大王
2016/07/22 全球购物
Mistine官方海外旗舰店:泰国国民彩妆品牌
2016/12/28 全球购物
加拿大时尚潮流大码女装购物网站:Addition Elle
2018/04/02 全球购物
DC Shoes澳大利亚官方网上商店:购买DC鞋子
2019/10/25 全球购物
Java基础面试题
2014/07/19 面试题
自我鉴定模板
2013/10/29 职场文书
羊脂球读书笔记
2015/06/30 职场文书
MySQL删除和插入数据很慢的问题解决
2021/06/03 MySQL
Win11开始菜单添加休眠选项
2022/04/19 数码科技
使用CSS实现黑白格背景效果
2022/06/01 HTML / CSS