分析python切片原理和方法


Posted in Python onDecember 19, 2017

使用索引获取列表的元素(随机读取)

列表元素支持用索引访问,正向索引从0开始

colors=["red","blue","green"]

colors[0] =="red"

colors[1]=="blue"

同时,也可以使用负向索引(python中有序序列都支持负向索引)

colors[-1]=="green"

       分析python切片原理和方法

列表的切片操作

切片操作不是列表特有的,python中的有序序列都支持切片,如字符串,元组。

切片的返回结果类型和切片对象类型一致,返回的是切片对象的子序列,如:对一个列表切片返回一个列表,

字符串切片返回字符串。

切片生成的子序列元素是源版的拷贝。因此切片是一种浅拷贝。

li=["A","B","C","D"]

格式:  li[start : end : step]    

start是切片起点索引,end是切片终点索引,但切片结果不包括终点索引的值。step是步长默认是1。

t=li[0:3]        ["A","B","C"]        #起点的0索引可以省略,t=li[:3]

t=li[2: ]        ["C","D"]           #省略end,则切到末尾

t=li[1:3]        ["B","C"]

t=li[0:4:2]       ["A","C"]       #从li[0]到li[3],设定步长为2。          

如何确定start和end,他们是什么关系?

在step的符号一定的情况下,start和end可以混合使用正向和反向索引,无论怎样,你都要保证

start和end之间有和step方向一致元素 间隔,否则会切出空列表

t=li[0:2]

t=li[0:-2]

t=li[-4:-2]

t=li[-4:2]

上面的结果都是一样的;t为["A","B"]

分析python切片原理和方法

t=li[-1:-3:-1]

t=li[-1:1:-1]

t=li[3:1:-1]

t=li[3:-3:-1]

上面的结果都是一样的;t为["D","C"]

分析python切片原理和方法

t=li[-1:-3]

t=li[-1:1]

t=li[3:1]

t=li[3:-3]

都切出空列表

       分析python切片原理和方法      

同时,step的正负决定了切片结果的元素采集的先后

省略start  和 end表示以原列表全部为目标

t=li[::-1]     t--->["C","B","A"]     #反向切,切出全部

t=li[:]        t--->["A","B","C","D"]   #正向切全部

Python 相关文章推荐
python计数排序和基数排序算法实例
Apr 25 Python
记录Django开发心得
Jul 16 Python
Python中zip()函数用法实例教程
Jul 31 Python
python下MySQLdb用法实例分析
Jun 08 Python
Python matplotlib画图实例之绘制拥有彩条的图表
Dec 28 Python
python图片指定区域替换img.paste函数的使用
Apr 09 Python
Django 用户登陆访问限制实例 @login_required
May 13 Python
3分钟看懂Python后端必须知道的Django的信号机制
Jul 26 Python
python Autopep8实现按PEP8风格自动排版Python代码
Mar 02 Python
python解决12306登录验证码的实现
Apr 18 Python
Python+OpenCV实现图片中的圆形检测
Apr 07 Python
python实现redis三种cas事务操作
Dec 19 #Python
Python2/3中urllib库的一些常见用法
Dec 19 #Python
Python与人工神经网络:使用神经网络识别手写图像介绍
Dec 19 #Python
Python random模块用法解析及简单示例
Dec 18 #Python
Python方法的延迟加载的示例代码
Dec 18 #Python
Python字符串拼接六种方法介绍
Dec 18 #Python
Python Socket使用实例
Dec 18 #Python
You might like
修改php.ini以达到屏蔽错误信息并记录日志
2013/06/16 PHP
PHP static局部静态变量和全局静态变量总结
2014/03/02 PHP
使用php+swoole对client数据实时更新(一)
2016/01/07 PHP
php爬取天猫和淘宝商品数据
2018/02/23 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
2020/02/23 PHP
JCalendar 日历控件 v1.0 beta[兼容IE&Firefox] 有文档和例子
2007/05/30 Javascript
第一个JavaScript入门基础 document.write输出
2010/02/22 Javascript
javascript实现带下拉子菜单的导航菜单效果
2015/05/14 Javascript
JavaScript 模块的循环加载实现方法
2015/12/13 Javascript
jQuery实现textarea自动增长宽高的方法
2015/12/18 Javascript
jQuery hover事件简单实现同时绑定2个方法
2016/06/07 Javascript
JavaScript用构造函数如何获取变量的类型名
2016/12/23 Javascript
新闻上下滚动jquery 超简洁(必看篇)
2017/01/21 Javascript
node.js将MongoDB数据同步到MySQL的步骤
2017/12/10 Javascript
npm 下载指定版本的组件方法
2018/05/17 Javascript
vue中实现左右联动的效果
2018/06/22 Javascript
Angular实现svg和png图片下载实现
2019/05/05 Javascript
12个提高JavaScript技能的概念(小结)
2019/05/09 Javascript
EasyUI 数据表格datagrid列自适应内容宽度的实现
2019/07/18 Javascript
js实现头像上传并且可预览提交
2020/12/25 Javascript
python 定时器,轮询定时器的实例
2019/02/20 Python
python装饰器简介---这一篇也许就够了(推荐)
2019/04/01 Python
python TF-IDF算法实现文本关键词提取
2019/05/29 Python
pycharm下配置pyqt5的教程(anaconda虚拟环境下+tensorflow)
2020/03/25 Python
Django中template for如何使用方法
2021/01/31 Python
纯CSS3制作页面切换效果的实例代码
2019/05/30 HTML / CSS
深入浅析CSS3中的Flex布局整理
2020/04/27 HTML / CSS
html5的画布canvas——画出简单的矩形、三角形实例代码
2013/06/09 HTML / CSS
安全生产网格化管理实施方案
2014/03/01 职场文书
2014年银行客户经理工作总结
2014/11/12 职场文书
对外汉语教师推荐信
2015/03/27 职场文书
青春雷锋观后感
2015/06/10 职场文书
600字作文之感受大自然
2019/11/27 职场文书
五年级作文之学校的四季
2019/12/05 职场文书
MySQL系列之十一 日志记录
2021/07/02 MySQL
MySQL安装失败的原因及解决步骤
2022/06/14 MySQL