python 切片步长
python切片
切片:list变量[值下标:结束值下标] 什么意思呢?
就是获取 list中 下标从定义的位置开始获取数据到 自定义的下标位置结束, 但是切片有个规矩就是顾头不顾尾,
举个例子
kl = ["OPPO","VIVO","IPHONE","LEVOVO"]
print(kl[0:1])
结果:['OPPO']
如果我取list里面的OPPO,VIVO 那就得结束下标多+1 : 说白了就是切片的时候顾头不顾尾 从填写的下标开始取值, 到结束的下标, 但是结束的下标即使填写了也不会取到,只会取到结束下标前面的值
kl = ["OPPO","VIVO","IPHONE","LEVOVO"]
print(kl[0:2])
结果:['OPPO', 'VIVO']
如果我从 下标1 开始取后面的全部值
kl = ["OPPO","VIVO","IPHONE","LEVOVO"]
print(kl[0:])
结果:['OPPO', 'VIVO', 'IPHONE', 'LEVOVO']
从起始位置下标开始取到最后全部的值,下标*:不填写
如果我想从list中的倒数第二个数据开始取值, 取到最后面的全部的值
kl = ["OPPO","VIVO","IPHONE","LEVOVO"]
print(kl[-2:])
结果:['IPHONE', 'LEVOVO']
因为 -号代表 倒数第几个下标, 从倒数第二个开始取:取全部, 切片是从左往右取值的
我还可以这样:
kl = ["OPPO","VIVO","IPHONE","LEVOVO"]
print(kl[:])
结果:['OPPO', 'VIVO', 'IPHONE', 'LEVOVO']
因为:开始切片下标不填代表从0开始去全部的值,结束不填写, 也是取全部的值
接下来就是切片步长
这个步长和range(0,10,2) 的步长是一样的
代码:
kl = ["OPPO","VIVO","IPHONE","LEVOVO"]
print(kl[1::2])
结果:['VIVO', 'LEVOVO']
因为:从下标1的数据开始取值,取后面全部的值, 并且取值的时候设置了步长,取值的时候跳着取,跳2个下标
可以这样理解:开始的时候下标是1 设置的步长是2 那么就是, 去下标是1 的数据, 还会去 1+步长(2) =3 那么会取下标是3 的数据,再往后就是结果3+步长(2)=5,系统会取下标是5 的数据, 在往后的话就是结果5+步长(2) =7 系统就会取下标是7的数据
最新文章
- 微信测试服务器验证sha1加密法,工具类
- CentOS7安装MariaDB10.1.14
- js物理弹性窗口
- Bootstrap_分页
- Catch That Cow(poj 3278)
- Android 自定义控件之app标题栏的封装
- windows下pip升级到8.1.2
- 动态从数据库中获取数据填充Select
- CHARINDEX用法
- currentTarget 与 Target 的区别
- Page 的生命周期学习小结(翻译兼笔记)
- Redis整合Spring结合使用缓存实例(转)
- RH133读书笔记(7)-Lab 7 Advanced Filesystem Mangement
- Zepto.js-表单方法
- 码云报错:fatal: remote origin already exists.解决方法
- ssh登录,爬坑系列
- Java Cookie工具类
- jdk各种包安装方式
- 《CSS世界》读书笔记(四)--宽度分离
- 500 G JAVA视频网盘分享(JEECG开源社区)
热门文章
- Docker系列之AspNetCore Runtime VS .NetCore Runtime VS .NET Core SDK(四)
- Docker学习总结(七)--Docker私有仓库
- C# 开发 BIMFACE 系列
- shell操作钉钉机器人实现告警提醒
- Keras(二)Application中五款已训练模型、VGG16框架解读
- POJ - 3436 ACM Computer Factory 网络流
- CCPC-Wannafly Camp #2 (部分题解)
- Java SPI详解
- spark与mapreduce的区别
- Erlang模块gen_fsm翻译