python基础知识之列表的分片
2016-12-14 14:05
471 查看
python基础知识之列表的分片
分片操作用来访问一定范围内的元素,通过在方括号内用冒号隔开两个索引来实现。第一个索引的元素是开始点,包括在结果之中,第二个索引的元素是结束点,不包括在结果之中。>>> tag='www.python.com' >>> tag[4:10] 'python' >>> tag[4:-4] 'python' >>>
千万记住索引是从0开始的,列表中的牵引与元素在列表中的第几个位置数刚好是多一的。
>>> num=[1,2,3,4,5,6,7,8,9,10] >>> num[4:6] [5, 6] >>> num[0:1] [1] >>>
上面例子中,num[4:6]表示访问的一个元素的索引是4,由于索引从0开始,即列表中的第5个元素,访问截至索引为6的元素(访问元素不包含此元素),即列表中第7个元素。所以,分片结果为列表中第5个元素[5]和第六个元素[6]组成的列表。以此类推,num[0:1]表示访问索引为0的元素,即为列表第一个元素[0]。
注意:分片中最左边的索引要比它右边索引出现的早,否则就会成为空列表。
>>> num[-3:-1] [8, 9] >>> num[-3:0] [] >>>
捷径1:访问倒数几个元素(包括最后一个元素)。
>>> num[-3:] [8, 9, 10] >>>
捷径2:访问前面几个元素(包括第一个元素)。
>>> num[:4] [1, 2, 3, 4] >>>
捷径3:访问全部元素。
>>> num[:] [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>>
步长问题:
其实,分片除了开始点和结束点外还有一个参数,就是步长。通常步长都是隐式设置的,像以上所有例子中步长都是隐式设置为1了。步长可以为正数,可以为负数,但不能为0.>>> num[10:0:2]
[]
>>> num[::1]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> num[::2]
[1, 3, 5, 7, 9]
>>> num[3:7:3]
[4, 7]
>>>
>>> num[0:10:-2] [] >>> num[::-1] [10, 9, 8, 7, 6, 5, 4, 3, 2, 1] >>> num[8::-1] [9, 8, 7, 6, 5, 4, 3, 2, 1] >>> num[5::-2] [6, 4, 2] >>> num[:5:-2] [10, 8] >>>
>>> num[::0] Traceback (most recent call last): File "<pyshell#21>", line 1, in <module> num[::0] ValueError: slice step cannot be zero >>>
步长为正数,列表从头部向右访问元素,步长为负数,列表从尾部向左访问元素。在步长问题中,一定要遵守第一个索引比第二个早出现原则。num[10:0:2]中步长为正数,列表从头部向右访问元素,但是由于第一个索引10比第二个索引0晚出现,所以结果为空列表。num[0:10:-2]中步长为负数,列表从尾部向左访问,第一个索引0比第二个索引10晚出现,所以结果为空列表。
相关文章推荐
- [Python] 专题五.列表基础知识 二维list排序、获取下标和处理txt文本实例
- python基础_制作多级菜单_(运用:字典_列表_元组等知识)
- python基础知识3(列表和元组)
- 关于python的基础知识17 -- 列表、数组和矩阵
- python基础知识之列表
- python基础知识--列表和元组
- Python 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)
- Python编程——Python基础知识之列表(-)
- python 基础知识回顾篇之简单迭代和列表生成
- Python3基础知识(二)---- 元组、列表、字典、文件
- python基础知识学习:列表和元组
- python基础知识(1)——列表和元组
- python基础知识之改变列表的基本操作
- 菜鸟的Python之路--基础知识(列表的基本操作)
- python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。
- Python基础知识--列表和集合
- Python零基础入门四之列表的分片
- python 基础知识(列表 元祖)
- 关于python的基础知识13--列表推导式
- 关于python的基础知识9--文件写入列表