python - 字符串切片
python中字符串切片是什麼,怎麼操作呢?不知道的小夥伴來看看小編今天的分享吧!
1、簡介:
字符串 'xxx'和 Unicode字符串 u'xxx'也可以看成是一種list,每個元素就是一個字符。因此,字符串也可以用切片操作,只是操作結果仍是字符串。在很多編程語言中,針對字符串提供了很多各種截取函數,其實目的就是對字符串切片。Python沒有針對字符串的截取函數,只需要切片一個操作就可以完成,非常簡單。
切片操作(slice)可以從一個字符串中獲取子字符串(字符串的一部分)。我們使用一對方括號、起始偏移量start、終止偏移量end 以及可選的步長step 來定義一個分片。
2、格式: [start:end:step]
[:] 提取從開頭(默認位置0)到結尾(默認位置-1)的整個字符串
[start:] 從start 提取到結尾
[:end] 從開頭提取到end - 1
[start:end] 從start 提取到end - 1
[start:end:step] 從start 提取到end - 1,每step 個字符提取一個
左側第一個字符的位置/偏移量為0,右側最後一個字符的位置/偏移量為-1
3、使用:
沒有步長的簡單切片:
首先定義一格字符串,比如叫Hebe,然後給它賦值
截取字符串中用的語法是 Hebe [ start : stop ]
注意: 這裏start表示的是字符串要截取的開始下標,stop 表示終止的字符串結束的前一個位置,這個位置你可以理解為放的是反斜槓,那麼顯示出來的字符就是stop下標的前一位。
從上面這個圖當中我們可以知道,如果從開頭截取到某個特定的位置可以用 [ : a]來表示
[python]
>>> Hebe = "xiaoxingyun"
>>> Hebe[:3]
'xia'
如果從某一位開始截取到最後一位可以用[ a : ]來表示
[python]
Hebe[4:]
'xingyun'
在 pyhton中的字符串的索引序號可以是正數也可以是負數,從-1開始算:
[python]
>>> Hebe = "xiaoxingyun"
>>> Hebe[-1]
'n'
>>> Hebe[-2]
'u'
>>> Hebe[-3]
'y'
>>> Hebe[-4]
'g'
有步長的切片方式:
另外的一種切片方式就是,首先還是定義一格字符串的變量,然後間隔的取出我們的字符串中的字符。
語法格式:
s [start: stop: stride]
同樣這裏取出來的字符串的結束字符是stop結束的前一個字符
stride表示的是間隔的取出字符串
例子:
反向的取出一格字符串
[python]
>>> Hebe="xiaoxingyun"
>>> length=len(Hebe)
>>> Hebe[::-1]
'nuygnixoaix'
>>>
間隔逆向的取出一格字符串:
[python]
>>> Hebe[::-2]
'nynxax'
方向的截取部分的字符串:
這個時候我們將步長的那個地方設置為負數,表示從右向左取字符串,步長的絕對值大於1表示間隔的取數
開始的部分那個截取下標也要從負數計算,或者start必須大於結束的下標,因為它是從右開始的截取的
python的字符串就是這樣的。