python中strip(),lstrip(),rstrip()函式的使用講解
1. strip()
它的函式原型:string.strip(s[,chars]),它返回的是字串的副本,並刪除前導和字尾字元。(意思就是你想去掉字串裡面的哪些字元,那麼你就把這些字元當引數傳入。此函式只會刪除頭和尾的字元,中間的不會刪除。)如果strip()的引數為空,那麼會預設刪除字串頭和尾的空白字元(包括\n,\r,\t這些)。
#這裡注意字串a的兩端都有一個空白字元,字元a和n之間也有一個。 a=" \rzha ng\n\t " print(len(a)) b=a.strip() print(b) print(len(b))
輸出:
11
zha ng
6
當引數為空的時候,兩端的空白符,\r,\n,\t都被刪除了,但是中間的那個空白符沒動。我們看下當有引數的時候是什麼情況:
a="rrbbrrddrr" b=a.strip("r") print(b)
輸出:bbrrdd
中間的字元r沒動,兩端的都刪除了,現在來看看我們傳入多個字元引數的情況:
a="aabcacb1111acbba" print(a.strip("abc")) print(a.strip("acb")) print(a.strip("bac")) print(a.strip("bca")) print(a.strip("cab")) print(a.strip("cba"))
輸出:
1111
1111
1111
1111
1111
1111
從這個程式碼看出什麼了嗎?可能和你想的不一樣,當你傳的引數不管是“abc”還是abc的其他排列形式,這都不重要,重要的是函式只知道你要刪除的字元是”a”,”b”,”c”。函式會把你傳的引數拆解成一個個的字元,然後把頭尾的這些字元去掉。明白了吧!
2. lstrip()和rstrip()
這兩個函式和上面的strip()基本是一樣的,引數結構也一樣,只不過一個是去掉左邊的(頭部),一個是去掉右邊的(尾部)。
a=" zhangkang " print(a.lstrip(),len(a.lstrip())) print(a.rstrip(),len(a.rstrip()))
輸出:
('zhangkang ',10)
(' zhangkang',10)
當沒有引數的時候,一個去掉了左邊的空白,一個去掉了右邊的空白。當傳引數的時候:
a="babacb111baccbb" print(a.lstrip("abc")) print(a.rstrip("abc"))
輸出:
111baccbb
babacb111
到此這篇關於python中strip(),lstrip(),rstrip()函式的使用講解的文章就介紹到這了,更多相關python lstrip rstrip strip內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!