亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Python > 正文

全面掌握Python字符串切片方法

2023-04-26 12:04:39
字體:
來源:轉載
供稿:網友

在《Python字符串的索引與訪問字符串中的字符》文章中介紹了使用字符串位置索引可以訪問字符串中的單個字符的方法,但有時,我們需要訪問字符串中的若干個連續的字符,即使用字符串中的一個子串。Python針對這種情況也提供了比較方便的處理方式。

簡單說,Python字符串切片就是按照指定索引截取字符串中的片段構成一個新的字符串。

一、語法結構

str_object[start_pos : end_pos : step]

切片從 start_pos 開始(包含起始位置索引處的字符),結束于 end_pos(不包含結束位置索引處的字符);

step 表示步長,即每step個字符截取1次字符;

Python字符串切片語法中的三個參數都是可選的,start_pos 默認為0,end_pos 默認為字符串長度(字符個數),step 默認為1;

在Python中,對于任何索引 i ,都遵循 s[:i] + s[i:] = s 的規則。

截取字符串中的任何字符索引 i 在源字符串中的索引應滿足:

start_pos <= i < end_pos

即截取時,包含開始位置的字符,而不包含結束位置處的字符。

當指定步長 step 時,截取的字符的索引 i 應該是:

i = start_pos + n * step , n 取 0,1,2......

同時,i < end_pos ,即指定步長時,截取的字符也不包含結束位置 end_pos 處的字符。

二、Python字符串切片示例

1、使用 start_pos 參數

>>> str1 = "Python is easy."
>>> str2 = str1[3 : ]  # 從索引位置3,即字符h開始到最后
>>> print(str2)
hon is easy.
>>> s = "武林網VEVB"
>>> print(s[3 : ])  # 從索引位置3,即字符 I 開始到最后
VEVB

在Python中的運行情況截圖:

Python字符串切片:指定開頭索引

2、只使用 end_pos 參數

>>> str1 = "Python is easy."
>>> str2 = str1[:6] # 截取前 6 個字符,即索引位置0-5
>>> print(str2)
Python
>>> s = "武林網VEVB"
>>> print(s[:3]) # 截取前3個字符,即索引0-2處的字符
武林網

end_pos截取停止位置,不包含在截取范圍內。

在Python中的運行情況:

Python字符串切片:指定結束位置

3、只指定 step 參數

>>> str1 = "http://www.49028c.com"
>>> str2 = str1[ : : 2]
>>> print(str2)
ht:/w.ieucm
>>> s = "武林網VEVB"
>>> s[ : : 3]
'翔I園'
>>>

在指定步長 step 參數時,處于開始索引位置處的字符是一定包含在內的,然后是按照 step 指定的步長,每次從當前索引處加 step 步長進行截取。如下圖陰影處示意。

                                           
str1 h t t p : / / w w w . b i y e 5 u . c o m
字符索引 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
step   1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2
str2 h   t   :   /   w   .   i   e   u   c   m

在Python中的運行效果如下圖:

4、同時指定 start_pos 和 end_pos 參數

>>> s1 = "武林網VEVB提供詳細的Python教程"
>>> s1[7 : 11]
'提供詳細'
>>> s2 = "Python/tR/tSPSS/r/nJava"
>>> s2[4 : 16]
'on/tR/tSPSS/r/nJ'
>>>

要注意的是:end_pos 參數是停止位置索引,不包含在截取范圍內,如 s1[7 : 11] 是截取的索引為 7 到 10 處的字符。

還要注意到,轉義字符也算作一個字符,如 s2 中的 /t ,/r 和 /n ,它們分別被作為一個字符來處理。

在Python中的運行情況如下圖所示:

Python字符串切片:指定開始索引和結束索引

5、同時指定3個參數的情況

>>> str1 = "http://www.49028c.com"
>>> str2 = str1[ 7 : 17 : 3]
>>> print(str2)
w.yu
>>> "武林網VEVB"[: 6 : 2]
'宇I樂'
>>>

從這個例子中可以看出,我們也可以直接使用字符串本值來進行切片截取。

6、使用負數索引

在進行字符串切片時,也可以使用負數索引,從后往前進行索引操作。

str1 = "www.49028c.com"
str2 = str1[-3 : ] 
print(str2)
str3 = str1[ :-4]
print(str3)
str4 = str1[-10: -4]
print(str4)
str5 = str1[-13 : -1 : 2]
print(str5)
str6 = str1[-1 : -13 : -2]
print(str6)

start_posend_pos 為負數時,是相對于字符串序列末端進行的,從末端進行時,最后一個字符的索引為 -1,然后往前依次為 -2 ,-3 ...。

當 step 為負數時,開始位置是從字符串后端開始,結束位置在字符串前端,所以 這時如需要切到想要的子字符串,需要保證: start_pos > end_pos 。

本例的示意圖如下所示:圖中綠色方塊代表截取開始位置,灰色方塊代表截取停止位置。

字符串參數為負時截取示意圖
                             
str1 w w w . b i y e 5 u . c o m
字符索引 7 8 9 10 11 12 13 14 15 16 17 18 19 20
負數索引 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
str2=str1[-3:]                       c o m
str3=str1[:-4] w w w . b i y e 5 u        
str4=str1[-10:-4]         b i y e 5 u        
str5=str1[-13:-1:2]     1 2 1 2 1 2 1 2 1 2 1  
  w   .   i   e   u   c    

step為正,從左往右生成新字符串: 'w.ieuc'
str6=[-1:-13:-2]     -1 -2 -1 -2 -1 -2 -1 -2 -1 -2 -1  
      .   i   e   u   c   m

step為負:從右往左生成新字符串:'mcuei.'

輸出結果:

com
www.VeVb
VeVb
w.ieuc
mcuei.

我們可以使用字符串切片功能把字符串進行翻轉:

s1 = "武林網VEVB"
s2 = s1[ : : -1]
print(s2)

輸出結果:

園樂TI亭宇翔

7、省略所有參數

當使用下面兩種形式時,相當于各參數取默認值

s = "Hello,Python!"
s1 = s[ : : ] # 從頭截到尾
s2 = s[ : : : ] # 從頭截到尾,默認步長1
print('s1=', s1)
print('s2=', s2)

輸出結果:

Hello,Python!
Hello,Python!

本文(完)

Python字符串切片問題

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日本高清视频| 欧美精品成人在线| 国产精品成人一区二区| 欧美激情亚洲视频| 亚洲午夜av久久乱码| 亚洲iv一区二区三区| 日韩欧美中文字幕在线观看| 亚洲国产成人久久综合| 精品久久久久久久久久久久久久| 欧美精品做受xxx性少妇| 亚洲第一页在线| 亚洲精品自产拍| 中文字幕av一区中文字幕天堂| 色与欲影视天天看综合网| 亚洲激情电影中文字幕| 亚洲va国产va天堂va久久| 国产高清在线不卡| 亚洲一区二区三区成人在线视频精品| 亚洲丝袜av一区| 欧美日韩亚洲高清| 日本精品中文字幕| 日韩高清免费在线| 久久久久久久久久久亚洲| 91九色综合久久| 欧美日韩精品二区| 91久久久久久久久久久久久| 久久99精品久久久久久琪琪| 欧美大片在线影院| 欧美激情精品久久久久久免费印度| 亚洲mm色国产网站| 成人免费自拍视频| 成人久久一区二区| 欧美激情乱人伦| 国产精品久久久久久久久男| 91沈先生作品| 粉嫩av一区二区三区免费野| 成人a级免费视频| 亚洲视频欧洲视频| 欧美wwwxxxx| 午夜精品久久久99热福利| 欧美日韩一区二区三区| 欧美日韩午夜视频在线观看| 精品调教chinesegay| 欧美极品少妇xxxxⅹ免费视频| 日韩av电影手机在线| 欧美日韩国产精品专区| 欧美日韩激情网| 亚洲欧美日韩天堂| 欧美高清一级大片| 亚洲激情视频在线| 国产91在线播放精品91| 久久97精品久久久久久久不卡| 精品亚洲一区二区三区在线播放| 亚洲欧美一区二区三区情侣bbw| 国外成人在线直播| 国色天香2019中文字幕在线观看| 欧美性猛交xxxx免费看| 欧美电影电视剧在线观看| 久久久亚洲精品视频| 91精品视频在线看| 欧美黑人又粗大| 国产精品久久久久久亚洲调教| 最近2019中文免费高清视频观看www99| 欧美中文字幕精品| 亚洲欧美国产日韩天堂区| 亚洲新中文字幕| 日本一区二区三区四区视频| 欧美午夜精品在线| 欧美大片第1页| 国产精品wwww| 亚洲成色www8888| 亚洲品质视频自拍网| 韩国精品美女www爽爽爽视频| 国产一区二中文字幕在线看| 亚洲欧美国产另类| 欧洲成人在线观看| 国产精品精品视频| 亚洲xxx视频| 久久久久久久色| 日韩免费视频在线观看| 日韩毛片中文字幕| 国产精品成人国产乱一区| 久久精品国产91精品亚洲| 亚洲欧美激情另类校园| 538国产精品一区二区在线| 欧美激情小视频| 福利一区视频在线观看| 美女福利视频一区| 中文字幕不卡在线视频极品| 97在线视频观看| 2021久久精品国产99国产精品| 亚洲国产一区二区三区四区| 欧美激情久久久| 亚洲人成网站免费播放| 91香蕉嫩草影院入口| 亚洲色图日韩av| 国产精品入口日韩视频大尺度| 久久国内精品一国内精品| 热久久这里只有| 国产精品va在线播放| 日韩高清电影免费观看完整版| 久久久久久网址| 欧美激情第三页| 日本精品免费一区二区三区| 人人澡人人澡人人看欧美| 91亚洲永久免费精品| 国产精品色午夜在线观看| 久久男人av资源网站| 国产精品私拍pans大尺度在线| 日韩欧美中文字幕在线观看| 97香蕉超级碰碰久久免费软件| 国产美女被下药99| 91麻豆桃色免费看| 亚洲三级免费看| 精品久久久久久中文字幕一区奶水| 久久在线精品视频| 日韩视频免费中文字幕| 清纯唯美亚洲激情| 欧美疯狂xxxx大交乱88av| 不卡在线观看电视剧完整版| 热久久免费视频精品| 久久免费精品视频| 在线观看精品国产视频| 欧美国产视频一区二区| 欧美亚洲成人网| 91精品国产高清久久久久久| 日韩亚洲精品电影| 成人性生交xxxxx网站| 久久精品亚洲一区| 亚洲韩国欧洲国产日产av| 免费av一区二区| 免费av在线一区| 日韩欧美aⅴ综合网站发布| 亚洲自拍偷拍色片视频| 97久久精品人人澡人人爽缅北| 国产精品十八以下禁看| 国产不卡av在线免费观看| 一区二区三区视频观看| 国产精品高精视频免费| 中文字幕日韩有码| 国产欧美日韩中文字幕在线| 中文字幕在线观看亚洲| 亚洲自拍偷拍视频| 欧美激情第一页xxx| 91久久精品美女高潮| 亚洲香蕉伊综合在人在线视看| 欧美国产极速在线| 97精品国产97久久久久久免费| 色香阁99久久精品久久久| 国产精品27p| 丝袜美腿精品国产二区| 日韩美女av在线免费观看| www国产亚洲精品久久网站| 亚洲欧美日本另类| 久久亚洲成人精品| 高清一区二区三区日本久| 中日韩美女免费视频网站在线观看| 日韩av在线免费观看| 91性高湖久久久久久久久_久久99| 久久精品国产精品| 伦理中文字幕亚洲| 亚洲图片欧美午夜| 最近2019中文字幕第三页视频| 成人免费网站在线看|