python3num='0123456789,num「:6:-1」=gt; '987'?「1:6:-1」为空
生活随笔
收集整理的這篇文章主要介紹了
python3num='0123456789,num「:6:-1」=gt; '987'?「1:6:-1」为空
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
原問題:
python3 num='0123456789',num[:6:-1]==>'987'為什么? 又為何num[1:6:-1]==>為空?切片操作
sequence[start?step] ( [起點索引:終點索引:步長] )
對一個具有索引的有序元素集合進行切片,獲得從起點到終點范圍內(nèi)相隔每步長的元素。
需要注意的是:
- 起點是包含在范圍內(nèi)的,終點則不包含
- 步長可以為負數(shù),當為負數(shù)時則表示相反反向,即索引不斷減小
- 在步數(shù)沒被申明時默認為1;在步長為正時起點沒被申明則默認為第一個元素的位置索引0,在步長為負時起點沒被申明則默認最后一個元素的位置索引-1
回答上題:
num=‘0123456789’
num[:6:-1]
根據(jù)上述第三條注意, num[:6:-1] 和 num[-1:6:-1]等價
這條命令是讓計算機從num中找到從索引-1(包含-1)以相反方向每次一步移動直到到索引6(不包含6)范圍內(nèi)的所有元素。
那么從索引-1字符’9’開始,然后向相反方向移動一步,則為索引-1-1=-2,即倒數(shù)第二個字符’8’,循環(huán)直至索引6(等價于索引-4),發(fā)現(xiàn)元素’987’。
num=‘0123456789’
num[1:6:-1]
這個則更好理解了,從num中找到從索引1(包含1)以相反方向每次移動一步直到索引6(不包含6)范圍內(nèi)的所有元素。
問題是索引1是比索引6要小的索引,所以無論反向移動多少步(索引1不斷減去1,也就是1-1-1-1-…都不會找到索引6),所以這條命令的答案也就是空集’’
總結(jié)
以上是生活随笔為你收集整理的python3num='0123456789,num「:6:-1」=gt; '987'?「1:6:-1」为空的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1024-程序员节快乐!给大家发福利啦!
- 下一篇: 如何评价Python3.8新出的“:=”