切片
python 中針對 字元串、清單、元組 資料類型提供了切片方法,可以非常友善的進行對象切割和截取。
1、适用範圍
- 切片 方法适用于 字元串、清單、元組 ,不适用于 字典
- 切片 使用 索引值 來限定範圍,從一個大的 字元串 中 切出 小的 字元串
- 清單 和 元組 都是 有序 的集合,都能夠 通過索引值 擷取到對應的資料
- 字典 是一個 無序 的集合,使用 鍵值對 儲存資料,沒有索引
2、文法格式
字元串[開始索引:結束索引:步長]
切片注意事項:
- 指定的區間 左閉右開,即 [開始索引, 結束索引)
- 從頭開始,「開始索引」可省略,
不能省:
- 直到末尾結束,「結束索引」可省略,
不能省:
- 步長預設為
,如果連續切片,數字和冒号都可以省略1
- 步長為正數表示從左向右,步長為負數表示從右向左
- 同時支援 順序索引 和 倒序索引
- 倒序索引即 從右向左 計算索引
- 最右邊的索引值是 -1,依次遞減
3、使用示例
>>> str1 = "0123456789"
"1. 截取從 2 ~ 5 位置 的字元串"
>>> str1[2:6]
'2345'
"2. 截取從 2 ~ `末尾` 的字元串"
>>> str1[2:]
'23456789'
"3. 截取從 `開始` ~ 5 位置 的字元串"
>>> str1[:6]
'012345'
"4. 截取完整的字元串"
>>> str1[:]
'0123456789'
"5. 從開始位置,每隔一個字元截取字元串"
>>> str1[::2]
'02468'
"6. 從索引 1 開始,每隔一個取一個"
>>> str1[1::2]
'13579'
"7. 截取從 2 ~ 倒數第二個字元"
>>> str1[2:-1]
'2345678'
"8. 截取字元串末尾兩個字元"
>>> str1[-2:]
'89'
"9. 字元串的逆序"
>>> str1[::-1]
'9876543210'