python中字符串切片是什么,怎么操作呢?不知道的小伙伴來看看小編今天的分享吧!
1、簡介:
字符串 'xxx'和 Unicode字符串 u'xxx'也可以看成是一種list,每個(gè)元素就是一個(gè)字符。因此,字符串也可以用切片操作,只是操作結(jié)果仍是字符串。在很多編程語言中,針對字符串提供了很多各種截取函數(shù),其實(shí)目的就是對字符串切片。Python沒有針對字符串的截取函數(shù),只需要切片一個(gè)操作就可以完成,非常簡單。
切片操作(slice)可以從一個(gè)字符串中獲取子字符串(字符串的一部分)。我們使用一對方括號、起始偏移量start、終止偏移量end 以及可選的步長step 來定義一個(gè)分片。
2、格式: [start:end:step]
[:] 提取從開頭(默認(rèn)位置0)到結(jié)尾(默認(rèn)位置-1)的整個(gè)字符串
[start:] 從start 提取到結(jié)尾
[:end] 從開頭提取到end - 1
[start:end] 從start 提取到end - 1
[start:end:step] 從start 提取到end - 1,每step 個(gè)字符提取一個(gè)
左側(cè)第一個(gè)字符的位置/偏移量為0,右側(cè)最后一個(gè)字符的位置/偏移量為-1
3、使用:
沒有步長的簡單切片:
首先定義一格字符串,比如叫Hebe,然后給它賦值
截取字符串中用的語法是 Hebe [ start : stop ]
注意: 這里start表示的是字符串要截取的開始下標(biāo),stop 表示終止的字符串結(jié)束的前一個(gè)位置,這個(gè)位置你可以理解為放的是反斜杠,那么顯示出來的字符就是stop下標(biāo)的前一位。
從上面這個(gè)圖當(dāng)中我們可以知道,如果從開頭截取到某個(gè)特定的位置可以用 [ : a]來表示
[python]
>>> Hebe = "xiaoxingyun"
>>> Hebe[:3]
'xia'
如果從某一位開始截取到最后一位可以用[ a : ]來表示
[python]
Hebe[4:]
'xingyun'
在 pyhton中的字符串的索引序號可以是正數(shù)也可以是負(fù)數(shù),從-1開始算:
[python]
>>> Hebe = "xiaoxingyun"
>>> Hebe[-1]
'n'
>>> Hebe[-2]
'u'
>>> Hebe[-3]
'y'
>>> Hebe[-4]
'g'
有步長的切片方式:
另外的一種切片方式就是,首先還是定義一格字符串的變量,然后間隔的取出我們的字符串中的字符。
語法格式:
s [start: stop: stride]
同樣這里取出來的字符串的結(jié)束字符是stop結(jié)束的前一個(gè)字符
stride表示的是間隔的取出字符串
例子:
反向的取出一格字符串
[python]
>>> Hebe="xiaoxingyun"
>>> length=len(Hebe)
>>> Hebe[::-1]
'nuygnixoaix'
>>>
間隔逆向的取出一格字符串:
[python]
>>> Hebe[::-2]
'nynxax'
方向的截取部分的字符串:
這個(gè)時(shí)候我們將步長的那個(gè)地方設(shè)置為負(fù)數(shù),表示從右向左取字符串,步長的絕對值大于1表示間隔的取數(shù)
開始的部分那個(gè)截取下標(biāo)也要從負(fù)數(shù)計(jì)算,或者start必須大于結(jié)束的下標(biāo),因?yàn)樗菑挠议_始的截取的
python的字符串就是這樣的。
以上就是小編今天的分享了,希望可以幫助到大家。
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com