ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python特性:切片

2021-09-12 20:01:27  阅读:189  来源: 互联网

标签:start python stop list 特性 切片 索引 100


切片

  1. 可以实现截取数列,字符串等的一部分
  2. 简单切片:l[start:stop],得到下标在范围内前闭后开区间范围内的元素,为负数时看作负数对应的下标
  1. 超出索引范围的切片参数,可以看成把list以空元素延长,进行切片操作后,去掉空元素后得到结果,

例如:

>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[-100:5]
[0, 1, 2, 3, 4]
>>> a[5:100]
[5, 6, 7, 8, 9]
>>> a[-100:100]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[100:1000]
[]
  1. startstop大,则得到空list
  2. 切片参数可以缺省,缺省的参数看作取尽可能大的区间,

例如:

>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[:5]
[0, 1, 2, 3, 4]
>>> a[5:]
[5, 6, 7, 8, 9]
>>> a[100:]
[]
  1. 扩展切片:a[start:stop:step],从start对应的位置出发,以step为步长索引序列,直至越过stop对应的位置,且不包括stop本身
  2. step为负数时,访问时逆序的,缺省时依旧是取尽可能大的区间

例如:

>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[5::-1]
[5, 4, 3, 2, 1, 0]
>>> a[:4:-2]
[9, 7, 5]
>>> a[::-1]#得到逆序list
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
  1. 一些例子:
#截取数列前三个数
l = [1, 2, 3, 4]
l[0:3]   #表示从索引0开始取,到索引3为止,不包括索引3
l[:3]    #若从0开始,可以省略
l[1:3]   #从索引1开始,取两个元素
l[-2:]   #从倒数第二个开始取到结尾
l[-2:-1] #取最后两个
l[:10:2] #表示前10个每两个取一个
l[:]     #表示原样复制一个list
#tuple也是list,不过不可变,切片后仍是tuple
(0, 1, 2, 3)[:3]  #结果:(0, 1, 2)
#字符串也可以看成list,切片后仍是字符串
'ABCDEFG'[::2]      #结果'ACEG'

标签:start,python,stop,list,特性,切片,索引,100
来源: https://www.cnblogs.com/Xloading/p/15259848.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有