程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python截取字符串(字符串切片)方法

編輯:Python

文章目錄

  • 字符串
    • 獲取單個字符
    • 獲取多個字符(字符串截去/字符串切片)


字符串

從本質上講,字符串是由多個字符構成的,字符之間是有順序的,這個順序號就稱為索引(index)。Python 允許通過索引來操作字符串中的單個或者多個字符,比如獲取指定索引處的字符,返回指定字符的索引值等。

獲取單個字符

知道字符串名字以後,在方括號[ ]中使用索引即可訪問對應的字符,具體的語法格式為:

strname[index]

strname 表示字符串名字,index 表示索引值。

Python 允許從字符串的兩端使用索引:

  • 當以字符串的左端(字符串的開頭)為起點時,索引是從 0 開始計數的;字符串的第一個字符的索引為 0,第二個字符的索引為 1,第三個字符串的索引為 2 ……
  • 當以字符串的右端(字符串的末尾)為起點時,索引是從 -1 開始計數的;字符串的倒數第一個字符的索引為 -1,倒數第二個字符的索引為 -2,倒數第三個字符的索引為 -3 ……

請看下面的實例演示:

url = 'http://c.biancheng.net/python/'
#獲取索引為10的字符
print(url[10])
#獲取索引為 6 的字符
print(url[-6])

運行結果:

i
y

獲取多個字符(字符串截去/字符串切片)

使用[ ]除了可以獲取單個字符外,還可以指定一個范圍來獲取多個字符,也就是一個子串或者片段,具體格式為:

strname[start : end : step]

對各個部分的說明:

  • strname:要截取的字符串;
  • start:表示要截取的第一個字符所在的索引(截取時包含該字符)。如果不指定,默認為 0,也就是從字符串的開頭截取;
  • end:表示要截取的最後一個字符所在的索引(截取時不包含該字符)。如果不指定,默認為字符串的長度;
  • step:指的是從 start 索引處的字符開始,每 step 個距離獲取一個字符,直至 end 索引出的字符。step 默認值為 1,當省略該值時,最後一個冒號也可以省略。

【實例1】基本用法:

url = 'http://c.biancheng.net/java/'
#獲取索引從7處到22(不包含22)的子串
print(url[7: 22]) # 輸出 zy
#獲取索引從7處到-6的子串
print(url[7: -6]) # 輸出 zyit.org is very
#獲取索引從-21到6的子串
print(url[-21: -6])
#從索引3開始,每隔4個字符取出一個字符,直到索引22為止
print(url[3: 22: 4])

運行結果:

c.biancheng.net
c.biancheng.net
c.biancheng.net
pcaen

【實例2】高級用法,start、end、step 三個參數都可以省略:

url = 'http://c.biancheng.net/java/'
#獲取從索引5開始,直到末尾的子串
print(url[7: ])
#獲取從索引-21開始,直到末尾的子串
print(url[-21: ])
#從開頭截取字符串,直到索引22為止
print(url[: 22])
#每隔3個字符取出一個字符
print(url[:: 3])

運行結果:

c.biancheng.net/java/
c.biancheng.net/java/
http://c.biancheng.net
hp/bne.ta/


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved