字符串常用方法詳解 (replace,split,join,strip)


本文對字符串的常用方法。如:title,replace,split,join,strip等方法進行了較爲詳細的講解。

1 字符串統一大小寫方法

title方法

title方法,將字符串中相分割的單詞首字母大寫,其餘小寫。

str_a = 'abC deF'
print(str_a.title())
# ------運行結果------
# Abc Def
# ------運行結果------

upper方法

upper方法,將字符串中所有字母大寫。

print(str_a.upper())
# ------運行結果------
# ABC DEF
# ------運行結果------

lowe方法

lowe方法,將字符串中所有字母小寫。

print(str_a.lower())
# ------運行結果------
# abc def
# ------運行結果------

2 字符串替換方法

replace方法

replace方法,替換字符串中內容,並返回新的一個字符串對象。
再Python中字符串屬於不可變對象,不能在原位修改,所以replace方法,相當於先替換原字符串部分內容,然後返回替換後的一個新的字符串對象。

語法:r_str = string.replace(__old=str,__new=str,__count= int) 參數含義:old:被替換的內容,new:替換內容,count:替換次數,默認全部替換。

str_b = '杰倫最帥,杰倫新歌什麼時候出來?'
replace_all = str_b.replace('杰倫','周杰倫')
print(replace_all)
# ------運行結果------
# 周杰倫最帥,周杰倫新歌什麼時候出來?
# ------運行結果------

replace_one = str_b.replace('杰倫','周杰倫',1)
print(replace_one)
# ------運行結果------
# 周杰倫最帥,杰倫新歌什麼時候出來?
# ------運行結果------

你可以試着自己寫一個函數來實現字符串替換的功能?

3 字符串切割與組合方法

split與join方法,字符串的分割與組合。

split 方法

split,將字符串按特定字符進行切割返回一個列表對象,如下,按空格切割字符串:

str_c = '我 是 一 個 字 符 串'
list_a = str_c.split(' ')
print(list_a)
# ------運行結果------
# ['我', '是', '一', '個', '字', '符', '串']
# ------運行結果------

join方法

join方法,用特定字符串來連接列表中的字符串
注意:列表中的對象需全部爲字符串類型

str_d = ' '.join(list_a)
print(str_d)
# ------運行結果------
# 我 是 一 個 字 符 串
# ------運行結果------

split ,join方法的組合使用

利用join,split方法來實現特定格式字符串的傳輸。如網絡通訊時只能傳輸字符串,不支持列表等形式內容,但又要保持數據的特定結構,就可以用以下方式來對信息進行處理。
如:有一個如下列表信息,需要將其轉化爲具有特定結構字符串:

先用對內層列表內容進行字符串轉化,用‘?’連接

temp_list = []
for l in list_b:
    temp_str = '?'.join(l)
    temp_list.append(temp_str)
print(temp_list)
# ------運行結果------
# ['小明?18?學習', '小李?19?睡覺']
# ------運行結果------

再對外層列表進行字符串轉化,用‘#’連接

message = '#'.join(temp_list)
print(message)
# ------運行結果------
# 小明?18?學習#小李?19?睡覺
# ------運行結果------

對message信息進行拆分,也分兩步。第一步,獲得外層的兩個數據

middle_list = message.split('#')
print(middle_list)
# ------運行結果------
# ['小明?18?學習', '小李?19?睡覺']
# ------運行結果------

第二步,對內層數據進行切割

message_list = []
for l in middle_list:
    temp_list2 = l.split('?')
    message_list.append(temp_list2)
print(message_list)
# ------運行結果------
# [['小明', '18', '學習'], ['小李', '19', '睡覺']]
# ------運行結果------

以上就是利用字符串的join和split方法對列表數據進行處理的簡單舉例。
當你熟悉了以上方法的操作原理,和會用列表解析時,以上步驟其實可簡化爲:

list_c = [['大明', '22', '編程'], ['大李', '23', '吃飯']]
# 列表轉爲字符串
message_c = '#'.join(['?'.join(t) for t in list_c])
print(message_c)
# ------運行結果------
# 大明?22?編程#大李?23?吃飯
# ------運行結果------
# 字符串轉化爲列表
message_list_c = [m.split('?') for m in message_c.split('#')]
print(message_list_c)
# ------運行結果------
# [['大明', '22', '編程'], ['大李', '23', '吃飯']]
# ------運行結果------

4 清除字符串空格方法

當讀取文本字符串內容,或者從gui頁面獲取字符串數據時,字符串首尾可能會出現空格。而這些空格對後期數據處理可能會造成一些麻煩,此時就可以用rstrip,lstrip,strip方法來去除。

rstrip方法

rstrip 去除右側空格(末尾空格)。

str_e = ' abc def '
str_e.rstrip()

lstrip方法

lstrip 去除左側空格(前端空格)。

str_e.lstrip()

strip方法

strip 去除兩側空格(首位空格)

str_e.strip()

以上內容爲原創,未經允許,禁止轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章