首頁 > 軟體

python中字串的常見操作總結(一)

2022-07-17 14:01:54

前言

在介紹字串的常見操作之前,先簡單介紹一下“物件”這個詞,物件是個很抽象的東西,目前只需要簡單理解,隨著知識的增加,會更加深入的理解什麼是物件。

python中的物件

什麼是物件?

python中的一切都是物件

如果我們將人類看作變數,每一個人類都是一個變數;將高階動物比作物件,而人類都是高階動物,即每個變數都是物件。

每個物件都有各自的屬性與方法。

人類中有警察、醫生等,我們可以將警察的看作物件的屬性,警察抓人看作物件的功能方法。

字串的capitalize()函數

capitalize()的功能

將字串的首字母大寫,其他字母小寫

capitalize()的用法

newstr = string.capitalize()  # 其中,string是想要將首字母大寫的字串,括弧內什麼都不用填寫

注意:capitalize()只是字串的函數,不能用於其他資料型別,且只適用與英文字母開頭的字串(因為英文字母才有大小寫)。

例子:

字串的小寫內建函數

下面兩個函數的功能都是將字串全體小寫

兩個函數都只對字串中的大寫字母有效

  • casefold()函數
newstr = string.casefold()  # 括弧內什麼都不用填寫
  • lower()函數
newstr = string.lower()  # 括弧內什麼都不用填寫

casefold()lower()函數的區別:casefold()對一些小語種如德語等也生效

例子:

字串的upper()函數

與lower相反,upper()函數是將字串全體大寫

只對字串中的小寫字母有效

new_str = string.upper()  # 括弧內什麼都不用填寫

例子:

字串的swapcase()函數

將字串中大小寫字母進行轉換,字串中大寫全變小寫,小寫全變大寫

只對字串中的字母有效果

newstr = string.swapcase()  # 括弧內什麼都不用填寫

例子:

字串的zfill()函數

為字串定義長度,如不滿足,缺少的部分用0填補

例如一個字串'xiaoming',長度為8,我要將這個字串的長度定義為10,用zfill將該字串補成10個長度

newstr = string.zfill(width)  # 括弧內引數為新字串希望的長度

如果希望新字串的長度比原字串小,則不會有任何效果。

例子:

字串中的count()函數

返回字串中的某個字元的個數

info = string.count(item)  # 括弧內引數填想要查詢個數的元素,返回一個整型

如果查詢的元素不存在,則返回0。

例子:

字串中startswith()與endswith()函數

  • startswith() 判斷字串開始位是否是某元素
  • endswith()判斷字串結束位是否是某元素
ret1 = string.startswith(item)  # item為想要判斷的元素,返回一個布林值
ret2 = string.endswith(item)  # item為想要判斷的元素,返回一個布林值

例子:

擴充套件:

starswith()endsswith()還可以傳入初始位置與結束位置,用於指定想要查詢的字串的起始於結尾位置。

str_1 = "My name is xiaoming, I'm from BeiJing."
print (str_1.startswith( 'string', 8 ))  # 從第九個字元開始的字串是否以 string 開頭
print (str_1.endswith( 'is ', 2, 10 )) # 從第2個字元開始到第十個字元結束的字串是否以 is  結尾

字串中的find()與index()函數

find()index()都是返回你想尋找的成員的位置

ret = string.find(item)   # item是想查詢的元素,返回一個整型
ret = string.index(item)  # item是想查詢的元素,返回一個整型或報錯
# 字串裡的位置是從左向右,以0開始的

find()如果找不到查詢的元素,會返回-1

index()如果找不到查詢的元素,會報錯

例子:

index()找不到元素會報錯:

字串中的strip()函數

去掉字串左右兩邊指定的元素,預設是去掉空格

newstr = string.strip(item)  # 括弧裡可以不填寫,也可以傳一個想要去掉的元素

傳入的元素如果不在開頭或結尾則無效:

  • lstrip()函數可以僅去掉字串開頭的指定元素或空格
  • rstrip()函數可以僅去掉字串結尾的指定元素或空格

例子:

字串中的replace()函數

將字串中舊的元素替換成新的元素,並能指定替換的數量

string.replace(old, new, max)
"""
old:被替換的元素
new:替代old的新元素
max:可選,代表替換幾個,預設全部替換全部匹配的old元素
"""

例子:

擴充套件:

replace()支援書寫到一行,因為repalce()返回的是一個字串,對這個字串繼續進行repalce()處理是可以的:

字串中返回bool型別的函數

isspace()函數

判斷字串是否是一個由空格組成的字串

ret = string.isspace()  # 括弧內不填內容,返回true或false

istitle()函數

判斷字串是否是標題型別(首字母大寫,其餘部分是小寫),只適用於英文

ret = string.istitle()  # 括弧內不填內容,返回true或false

isupper()與islower()函數

判斷字串是否都是大寫或都是小寫,只檢測字母

ret = string.isupper()  # 括弧內不填內容,返回true或false
ret = string.islower()  # 括弧內不填內容,返回true或false

到此這篇關於python中字串的常見操作總結(一)的文章就介紹到這了,更多相關python字串操作內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com