python中字串的rstrip 方法

2021-09-12 22:14:01 字數 1196 閱讀 4323

今天在刷bite 105. slice and dice時遇到的乙個問題,判斷乙個字串是否以'.'或者'!'結尾,如果以這兩個字元結尾,則去除這兩個字元。

自己寫的函式:

results = 

text_list = text.split('\n')

print(text_list)

for line in text_list:

if line:

new_line = line.strip()

if new_line[0] in ascii_lowercase:

line_list = new_line.split(' ')

if line_list[-1][-1] != '.' and line_list[-1][-1] != '!':

else:

return results

可以看到,在判斷和去除這兩個字元的時候,用了比較笨的方法,就是直接取字串的[0:-1],後來查資料發現,python字串中提供了rstrip()方法可以直接實現該功能,修改後的**如下:

results = 

for line in text.strip().split('\n'):

line = line.strip()

if line[0] not in ascii_lowercase:

continue

words = line.split()

last_word_stripped = words[-1].rstrip('!.')

return results

檢視了該方法的實現:

def rstrip(self, *args, **kwargs): # real signature unknown

"""return a copy of the string with trailing whitespace removed.

if chars is given and not none, remove characters in chars instead.

"""pass

發現如果沒有給該方法傳引數,該方法會預設去掉字串結尾的空格,如果傳參了,就會去掉字串中以傳參結尾的。

其實該練習中,還有ascii_lowercase值得注意,可以用來判斷是否為小寫字母!!!

python中的字串

方法1 用字串的join方法 a a b c d content content join a print content 方法2 用字串的替換佔位符替換 a a b c d content content s s s s tuple a print content 我們可以通過索引來提取想要獲取的...

python中的字串

b nihao hahah xixi 輸出 nihao nhahah nxixi n 原字串 big r this hhaha big輸出 this nhhaha 還原為unicode字串 hello u hello u0020world hello輸出 hello world 字串是不可以改變的 ...

python中的字串

字串連線操作 字串複製操作 字串索引操作,通過索引訪問指定位置的字元,索引從0開始 字串取片操作 完整格式 開始索引 結束索引 間隔值 結束索引 從開頭擷取到結束索引之前 開始索引 從開始索引擷取到字串的最後 開始索引 結束索引 從開始索引擷取到結束索引之前 擷取所有字串 開始索引 結束索引 間隔值...