时间:2022-10-06 11:59:54 | 栏目:Python代码 | 点击:次
我们知道,在for循环里range可以调用3个参数,分别对应开始、结束和步长值。用于列表使,我们可以将这三个参数在中括号中指定,用冒号字符分隔。
使用时,这三个值都是可选的。
>>> mylist ['w', 'a', 's', 'a', 'b', 'i'] >>> mylist[0: 5: 2] ['w', 's', 'b'] >>> mylist[3::] ['a', 'b', 'i'] >>> mylist[:5:] ['w', 'a', 's', 'a', 'b'] >>> mylist[::2] ['w', 's', 'b']
注意:结束值表示 直到但不包括
step为正,则从左到右切片,如果 start > end,则为空
>>> mylist = list("wasabi") >>> mylist ['w', 'a', 's', 'a', 'b', 'i'] >>> mylist[5:0:2] [] >>> mylist[0:4:2] ['w', 's']
step为负,则从右到左切片,如果 start < end,则为空
>>> mylist[0:5:-2] [] >>> mylist[5:3:-1] ['i', 'b']
start 和 end 如果不同时为空,前者表示最开始,后者表示最后一个;
>>> mylist[:4:2] ['w', 's'] >>> mylist[3::2] ['a', 'i']
同时为空的时候,表示取所有。至于方向,取决于 step
>>> mylist[::2] ['w', 's', 'b'] >>> mylist[::-1] ['i', 'b', 'a', 's', 'a', 'w']
在python中,有时候是需要间断取数或者其他情况时,这时就需要用到步长了。
str=["a","b","c","d","e","f","g"]
这是一个列表,那如果需要取出列表中的数,但是又是间断取指定数时,此时可以用到步长,如图:
截取字符串:取头不取尾