1. 程式人生 > >Python:strip 函數的陷阱

Python:strip 函數的陷阱

字符 結果 ecb ont 大跌 第一個 none 字母 abc

S.strip(chars=None)

strip 函數用於去除字符串首尾的空格,當 chars 不為 None 時,則刪除字符串首尾的 chars 中的字符。

當 chars=None 時,去除首尾空格,沒啥好說的,我們來看 chars 不為 None 時的情況。

str = abc123abc
print(str.strip(a))        # bc123abc
print(str.strip(abc))     # 123

結果跟預期的一樣,我們再看下面的例子:

print(str.strip(cba))      # 123
print(str.strip(
decbafg)) # 123

這結果讓我們大跌眼鏡,命名是“abc”,為什麽用“cba”也能刪除呢?下面一個更誇張,“defg”這4個字母原字母中根本沒有。

結果表明,只要首尾兩端的字符在 chars 之內,就會被刪除,直到遇到第一個不在 chars 內的字符。

Python:strip 函數的陷阱