在使用字串的時候透過使用一些方法能夠更方便我們進行字串的操作,我們來挑選一些常用的方法來進行講解,其中基礎方法包含count()方法、find()方法和index()方法,然後我們分為測試方法、修改方法和搜尋替換方法三個角度去介紹相關函數。
我們通常使用count()方法來統計字串中的某個元素在字串中出現的次數,如果不存在回傳0,如果存在則回傳存在的次數,語法格式如下:
my_str.count(x)
my_str為我們要檢索的字串名,x為我們要統計的字元。
看下面的例子:
>>>my_str'www.dotcpp.com'>>>my_str.count('w')3>>>my_str.count('.')2>>>my_str.count('p')2>>> my_str.count('*')0
傳回的數字即該字元在字串中出現的次數,因為'*'不存在,所以傳回值為0。
find方法來檢索字串中是否包含指定元素,如果包含該元素則傳回該元素第一次出現的索引位置,如果不存在該字元則傳回-1,它的語法結構為:
my_str.find(x)
my_str為要檢索的字串名,x為我們要尋找的元素。
看下面的例子:
>>>my_str'www.dotcpp.com'>>>my_str.find('w')#尋找字元w0>>>my_str.find('p')#尋找字元p8>>>my_str.find('m ')#尋找字元m13>>>my_str.find('*')#尋找字元*,因為*不存在因而回傳-1-1
我們同樣可以採用關鍵字in來查詢指定字元是否存在於指定字串中,如果字串中存在指定字元則傳回True,如果不存在則傳回False。
看下面例子:
>>>my_str'www.dotcpp.com'>>>'p'inmy_strTrue>>>'w'inmy_strTrue>>>'.'inmy_strTrue>>>'*'inmy_strFalse
但是這種方式只能知道我們要存取的元素是否存在,而不能取得它存在的位置,大家在學習過程中可以自主選擇方法去求解。
index()方法和find()方法類似,index()方法在檢索到指定字元的時候也會傳回該字元第一次出現的索引位置,但是如果檢索不到就會拋出異常,它的語法格式為:
my_str.index(x)
my_str為要檢索的字串名,x為要尋找的元素。
看下面的例子:
>>>my_str='www.dotcpp.com'>>>my_str.index('w')0>>>my_str.index('o')5>>>my_str.index('*')Traceback(mostrecentcalllast ):File<stdin>,line1,in<module>ValueError:substringnotfound
找到存在的元素後會返回其在字串中的索引位置,最後一個'*'因為沒找到而報錯。
上面三種方法為他們的省略格式,在標準文件中,他們的格式分別為:
my_str.count(x[,start[,end]])my_str.find(x[,start[,end]])my_str.index(x[,start[,end]])
在上面講解的時候我們沒有提到括號中的內容,因為在Python文檔中''[]''表示可以省略部分,因此這一部分是可以省略不寫的,但是我們在使用的時候,還是可以使用的,start為索引的起始位置,end為索引的結束位置,但不包含end。
我們來透過例子來講解一下標準格式:
>>>my_str='www.dotcpp.com'>>>my_str.index('o',6,13)#在6-12之間尋找o12>>>my_str.count('w',0,5 )#統計w在0-4之間存在的次數3>>>my_str.find('c',3,9)#在3-8之間尋找77
標準格式的使用看似比較複雜,但是使用起來卻十分方便的。