1. 程式人生 > 其它 >python基礎之序列型別的方法——字串方法

python基礎之序列型別的方法——字串方法

python基礎之序列型別的方法——字串方法

Hello大家好,我是python學習者小楊同學,經過一段時間的沉澱(其實是偷懶不想更新),我終於想起了自己的部落格賬號,所以這次帶來的是序列方法的後半部分:字串的方法。

接上述的列表和元組的方法,我們這次來講講字串的方法,現在我們一起開始學習吧。

注:字串是不可變型別,改、刪的操作將會改變原有字串,說人話就是改了以後它就不是原來的那個它了(滑稽)

index()方法

與列表相同,index查詢指定元素的下標值,如果沒有該元素,則丟擲錯誤,如果該字串裡有多個重複的數值,只返回從左開始的第一個:

a = 'hello world'
print(a.index('h'))
結果:0
# 也可以對連寫元素
print(a.index('he'))
結果:0
# 如果重複,返回從左開始的第一個
print(a.index('l'))
結果:2
# 如果沒有則丟擲錯誤
print(a. index('z'))
ValueError: substring not found

count()方法

count方法可以計算指定元素在字串中出現的個數:

a = "hello world"
print(a.count('l'))
結果:3
# 也可以像index()方法那樣連寫,如he
print(a.count('he'))
結果:1

find()方法

也是查詢指定元素,也會返回指定下標。與index不同的是,如果該元素沒有,則返回-1,故查詢字串的時候更推薦使用find方法,減少出錯的可能:

a = 'hello world'
print(a.find('z'))
結果:-1

判斷方法

字串中還有四個用於判斷的方法,分別是判斷是否全是數字的isdigit()、判斷是否全是字母的isalpha()、判斷是否都是小寫的islower()、以及判斷是否都是大寫的isupper(),這些方法返回的結果是True或者False,大家有興趣可以嘗試:

a = 'hello world'
# isdigit 判斷該字串中是否都是數字,返回True 或False
print(a.isdigit())
# isalpha 判斷每個元素是否都是字母,如果字串存在空格,就算全部都是字母也會返回False
print(a.isalpha())
# islower 判斷字串中是否都是小寫字元
print(a.islower())
# isupper 判斷字元字元是否大寫
print(a.isupper())

講完了查,現在講改的方法,改的方法就比較樸素,沒有查那麼豐富了。

upper()方法

upper,顧名思義就是將字串轉換成大寫:

a = 'hello world'
print(a.upper())
結果:HELLO WORLD

lower()

與之相反,自然會有個轉換成小寫的方法:

a = "HELLO WORLD"
print(a.lower())
結果:hello world

這部分操作呢,也可以叫做改,也可以叫做刪,因為帶有部分刪除的功能,這裡就叫它刪吧

strip()

strip可以去除字串兩端的空格,當然也分出了lstrip刪除左側空格和rstrip刪除右側空格,這裡以預設方法為準:

a = "		hello world		"
print(a.strip())
結果:hello world

如果你的字串兩端沒有空格,則你可以指定一個元素,strip會為你刪除指定的元素,如果該指定元素不存在,則無事發生:

a = "hello world"
print(a.strip('h'))
結果:ello world

split()方法

split可以指定一個元素,對字串進行分列,同時刪除該元素,如果該元素出現了多次,則分成多列

比如對一個hello world進行切割,切割l,則三個l一起切掉,該文字分為四段,並將結果轉換成列表:

a = 'hello world'
print(a.split('l'))
結果:['he', '', 'owor', 'd']

replace()方法

replace可以將自定字元替換成自己想要的字元:

a = 'hello world'
print(a.replace('world','小楊'))
結果:hello小楊

字串格式化等其他方法

通過加號來對兩個字串進行連線

如果有兩個字串,可以通過+來連線兩個字串:

a = 'hello'
b = 'world'
print(a+b)
結果:helloworld

佔位符以及format的方法

概念:佔位符說人話就是給一段字串挖坑,挖完坑後用對應的東西填坑,並且挖了幾個坑就必須填上幾個坑

一開始的佔位符看起來比較low,使用百分號%加上特定的字母來表示該佔位符的數值型別,比如%S表示一個字串,%d表示整數,%f表示浮點數,這裡%.2f表示保留兩位小數,使用%佔位後,後面需要跟上%(填坑的資料)來填坑:

print('大家好,我是%s,今年%d歲,身高%.2f釐米' % ('小楊', 23, 170.0))
結果:大家好,我是小楊,今年23歲,身高170.00釐米

還有一種更加優雅的寫法,也就是使用format方法來拼接,format的佔位符是{},完成佔位後使用.format(變數)來進行拼接

print('大家好,我是{}'.format('xiaoyang'))
結果:大家好,我是xiaoyang

join()方法

join方法可以用來拼接兩個字串,加兩個字串拼接在指定字元的兩端,join後面只能接列表元組和字串:

c = "+".join(['hello', 'world'])
print(c)
結果:hello+world