Python 切片
-
切片的文法
- [起始:結束:步長],也可以簡化使用[起始:結束]
#定義一個list >>> list_arr = ['Michael','Joker','Tracy'] >>> list_arr[0:3] ['Michael', 'Joker', 'Tracy']
表示,從索引 開始取,直到索引list_arr[0:3]
為止,擔不包括索引3
。即索引 ,3
,1
,正好是3個元素。2
- 如果第一個索引是 ,還可以省略
- 也可以從索引1開始,取出2個元素出來
>>> list_arr[1:3] ['Joker', 'Tracy'] >>>
- 類似的,既然python支援
取倒數第一個元素,那麼它同樣支援倒數切片,那咱們試一試:list_arr[-1]
>>> list_arr ['Michael', 'Joker', 'Tracy'] >>> list_arr[-1] 'Tracy' >>> list_arr[-1:] ['Tracy'] >>> list_arr[:-1] ['Michael', 'Joker'] >>> list_arr[:-2:] ['Michael'] >>> list_arr[-2:] ['Joker', 'Tracy'] >>> list_arr[-2:-1] ['Joker'] >>>
- 字元串處理
s = 'hello word!' print(s[4]) print(s) print(s[3:7]) # 結果元素裡包含下标 3,不含下标 7 print(s[:]) # 取出所有元素(沒有起始位和結束位之分),預設步長為1 print(s[1:]) # 從下标為1開始,取出 後面所有的元素(沒有結束位) print(s[:5]) # 從起始位置開始,取到 下标為5的前一個元素(不包括結束位本身) print(s[:-1]) # 從起始位置開始,取到 倒數第一個元素(不包括結束位本身) print(s[-4:-1]) # 從倒數第4個元素開始,取到 倒數第1個元素(不包括結束位本身) print(s[1:5:2]) # 從下标為1開始,取到下标為5的前一個元素,步長為2(不包括結束位本身) # python 字元串快速逆置 print(s[::-1]) # 從後向前,按步長為1進行取值