Str(字串)型別的內建函式(其中有一些你並不在意的細節)
常用方法:
注:以Java方式來記錄
str capitalize() : 作用:將首字母大寫,其它字母全部小寫 。 無參,返回值是str型別
str upper() : 作用: 將字串全部大寫。 無參,返回值是str型別
str lower() : 作用: 將字串全部小寫。
str swapcase() : 作用 : 將字串中的字元大小寫進行互轉
str title() : 作用: 將每個單詞的首字母大寫,其它字母小寫
str max(str) : 作用 : 返回字串中最大的字元
str min(str) : 作用 : 返回字串中最小的字元
int count(str, star_int , end_int) : 作用 : 統計 str 字串 在從star_int到end_int(不包括)範圍內 出現的次數
int find(str, star_int , end_int) : 作用: 在從star_int到end_int(不包括)範圍內 , str 的索引, 如果出現兩次或者以上,只取最後一個的索引。 如果查詢不到,返回 -1
int rfind(str, star_int , end_int) : 作用: 同find 不過是從右邊開始查詢
int index(str, star_int , end_int) : 作用: 在從star_int到end_int(不包括)範圍內 , str 的索引, 如果出現兩次或者以上,只取最後一個的索引。 如果查詢不到,會報錯
int rindex(str, star_int , end_int) : 作用: 同index 不過是從右邊開始查詢
list split(str , num) : 作用:以某字元來切割字串,num 表示切割幾次
list rsplit(str, num) : 作用: 從右邊以某字元來切割字串,num 表示切割幾次
str strip([str]) : 作用:移除字串指定的字元,預設為空格
str lstrip([str]) : 作用 : 移除字串左邊的指定的字元,預設為空格
str rstrip([str]) : 作用 : 移除字串右邊的指定的字元,預設為空格
str replace(old , new, count) : 作用: 使用 new字元替換原來字串中old字元count次
str join(str) : 作用 : 用某個字元來拼接字串中的元素
bool starwith(str, star_int , end_int) : 作用:判斷從star_int開始到end_int(不包括)結束,該字串是不是以 str 開始的
bool endwith(str, star_int , end_int) : 作用:判斷從star_int開始到end_int(不包括)結束,該字串是不是以 str 結束的
bool isdigit() : 作用 : 判斷該字串是不是純數字組成
bool isnumeric() : 作用 : 判斷該字串是不是純數字組成
bool isdecimal() : 作用 : 判斷該字串是不是純數字組成
s.isdigit、isdecimal 和 s.isnumeric 區別
isdigit()
True: Unicode數字,byte數字(單位元組),全形數字(雙位元組)
False: 漢字數字,羅馬數字,小數
Error: 無
isdecimal()
True: Unicode數字,,全形數字(雙位元組)
False: 羅馬數字,漢字數字,小數
Error: byte數字(單位元組)
isnumeric()
True: Unicode 數字,全形數字(雙位元組),漢字數字
False: 小數,羅馬數字
Error: byte數字(單位元組)
bool isalpha() : 作用 : 判斷該字串是不是由漢字和字母組成
bool isalnum() : 作用 : 判斷該字串是不是由漢字和數字組成(字串中間不能有空格)
bool isupper() : 作用 : 判斷該字串是不是全部大寫
bool isspace() : 作用 :判斷該字串是不是全是空白
str translate(table) : 作用 : 相當於翻譯表 需要通過maketrans()方法來獲得
str maketrans(intab, outtab) : 作用 : 建立字元對映的轉換表 , 將字串中的 【intab】 字元,轉為 【oyttab】字元
intab = "Python" outtab = "aaaaaa" old_str = str.maketrans(intab, outtab) demo = "Python是一門簡單的語言" new_str = demo.translate(old_str) print(new_str) 結果: aaaaaa是一門簡單的語言 注意: len(intab) == len(outtab) 必須相等!!!!!
str encode("編碼格式', errors) : 作用:指定字串使用 該編碼格式 進行輸出 errors:不同錯誤的設計方案,預設為strict
str decode("編碼格式', errors) : 作用:指定字串使用 該編碼格式 進行解碼輸出
demo = "Python是一門簡單的語言" new_demo = demo.encode("GBK") print(new_demo) old_demo = bytes(new_demo).decode("GBK", errors='strict') print(old_demo) 結果: b'Python\xca\xc7\xd2\xbb\xc3\xc5\xbc\xf2\xb5\xa5\xb5\xc4\xd3\xef\xd1\xd4' Python是一門簡單的語言
format() :
舉例: demo = "這是一段{}程式碼,它很{}" demo_test = demo.format("Python","簡單") demo = "這是一段{1}程式碼,它很{2}" demo_test = demo.format("Python","簡單") demo = "這是一段{a}程式碼,它很{b}" demo_test = demo.format(a = "Python",b = "簡單") # 結果:這是一段Python程式碼,它很簡單
補充:
bool isidentifier() : 作用:判斷該字串是否滿足Python的變數命名規範(但是真實返回False的情況只是:以數字開頭和字串中有特殊字元,如果字串是關鍵字,但這個方法並不會報錯)
str casefold() : 作用: 將字串的全部轉為小寫
兩者的區別是:lower() 方法只對ASCII編碼,也就是‘A-Z’有效,對於其他語言(非漢語或英文)中把大寫轉換為小寫的情況只能用 casefold() 方法。
str partiton('str') : 作用 : 用某字元將字串進行切割 但返回值是一個 三元的元組, 第一個是該字元切割前半部分,第二個是該字元,第三個是該字元切割的後半部分
bool isprintable() :作用 :判斷字元的所有字元都是可列印的字元或字串為空返回