在字串、列表、元組三種序列型別中的切片方法一致,都是使用變數名+[開始索引值:結束索引值:步長]的方式,若是步長省略則步長預設為1。步長,顧名思義就是一步有多長,若為1,就是切片時每次走一步,在切片區間內,每個元素都取到,若為2,就是切片時每次走兩步,在切片區間內,隔乙個元素取值。python在切片時,切片區間是左閉右開的,也就是說開始索引的元素的值能夠取到,但是結束索引的元素的值取不到,下面來看具體例子。
首先來看字串str型別
#首先定義字串
a ='hello world!'
#開始切片並列印設定開始索引值為0;結束索引值
(a[0:8
:1])
(a[0:8
(a[0:8
:2])
可以看到,當取切片區間為[0:hello wo
hello wo
hlow
2]
[0:2]
[0:2
]時,只取到第0,1
0,10,
1號元素,也就是上面說的左閉右開,同時可以清楚的看到當步長省略時,步長預設為1。特別注意空格也是乙個字元。
當開始索引值,結束索引值,步長全部省略時,切片取到所有的值,步長為1。
a =
'hello world!'
(a[::]
)
hello world!
當開始索引值,結束索引值都省略,步長為-1時,是將字串倒序。
a =
'hello world!'
(a[::-
1])
!dlrow olleh
再來看list型別
a =[1
,2,3
,' ',4
,5,'hello world!'
(a[0:5
:1])
(a[0:5
(a[::]
(a[::-
1])
再來看tuple型別[1,
2,3,
' ',4]
[1,2
,3,' ',4
][1,
2,3,
' ',4,
5,'hello world!'][
'hello world!',5
,4,' ',3
,2,1
]
a =(1
,2,3
,' ',4
,5,'hello world!'
(a[0:5
:1])
(a[0:5
(a[::]
(a[::-
1])
(1,
2,3,
' ',4)
(1,2
,3,' ',4
)(1,
2,3,
' ',4,
5,'hello world!')(
'hello world!',5
,4,' ',3
,2,1
)
Python序列的切片操作
1 切片是python序列的重要操作之一,適用於列表元組 字串 range物件等型別 2 切片使用2個冒號分割3個數字來完成 第乙個數字表示切片的開始位置 預設為0 第二個數字表示切片截止 但不包含 位置 預設為列表長度 第三個數字表示切片的步長 預設為1 當步長省略時可以順便省略最後乙個冒號。3 ...
Python序列的切片操作與技巧
序列 consequence 是python中一種資料結構,這種資料結構根據索引來獲取序列中的物件。python中含有六種內建序列類 list,tuple,string,unicode,buffer,xrange。其中xrange比較特殊,它是乙個生成器,其他幾個型別具有的一些序列特性對它並不適合。...
Python序列的切片操作與技巧
序列 序列 consequence 是 python 中一種資料結構,這種資料結構根據索引來獲取序列中的物件。python 中含有六種內建序列類 list,tuple,string,unicode,buffer,xrange。其中 xrange 比較特殊,它是乙個生成器,其他幾個型別具有的一些序列特...