關於字元的常用操作:(字元為不可變長度的類型,故不能“增”、“刪”等改變長度的操作) 1、改:改變字元串中的某個值。但為淺改變; 若想要改變“name”則可以用下邊的代碼: 2、string.isdigit() ,判斷string中是否全為數字類型的字元 3、查找指定的字元在字元中的索引 4、str ...
關於字元的常用操作:(字元為不可變長度的類型,故不能“增”、“刪”等改變長度的操作)
1、改:改變字元串中的某個值。但為淺改變;
1 name = "Python3.5" 2 print(name.replace('y','H')) 3 print(name) 4 結果: 5 PHthon3.5 #只在改變的時候起作用 6 Python3.5
若想要改變“name”則可以用下邊的代碼:
1 name = "Python3.5" 2 name_list = list(name) #將字元“name”轉化為列表 3 name_list[name_list.index('y')] = 'H' #找到‘y‘對應的下邊,將其改為’H‘ 4 name = ''.join(name_list) #將列表“name_list“用空間接起來 5 print(name) 6 結果為: 7 PHthon3.5
2、string.isdigit() ,判斷string中是否全為數字類型的字元
string1 = "123" string2 = "123abc" s1 = string1.isdigit() s2 = string2.isdigit() print(s1,'\n',s2) 結果為: True False
3、查找指定的字元在字元中的索引
name = "Python3.5" p = name.find('t') #從右向左查找的 print(p) q = name.rfind('t') #從右向左查找的,但是’t'在列表中的索引號是不變的 print(q) 結果為: 2 2
4、string.center(參數1,參數2)參數1為總長度,參數2為填充的字元。表示把string放中間,不夠參數1的長度時,空位補參數2的字元;
1 string = "abc" 2 print(string.center(10,'*')) 3 print(string.center(11,'*')) 4 結果為: 5 ***abc**** 6 ****abc****
5、string.capitalize() 表示將首字母大寫。capital意為首都最大的,故可助記將首字母大寫
string = "abc" print(string.capitalize()) 結果為: Abc
6、string.casefold()將字元中的大寫字元轉變為小寫字元
1 string1 = "ABC" 2 string2 = "AbC" 3 print(string1.casefold()) 4 print(string2.casefold()) 5 結果為: 6 abc 7 abc
7、string.count(參數1)表示統計字元串string中,參數1出現的次數
1 string = "ABCBBC" 2 print(string.count('B')) 3 結果為: 4 3
8、string.encode(參數1,參數2)表示字元串的編碼方式,參數1表示編碼方式,參數2表示錯誤處理方式
9、string.endswith(參數1)判斷字元串string是否是以參數1為結尾的,若是返回True,否則返回False。
1 string = "ABCBBC" 2 print(string.endswith('BC')) 3 print(string.endswith('B')) 4 結果為: 5 Ture 6 False
10、expandtabs()表示將“Tab”鍵轉化為多少個空格,預設為8個空格
1 string = "ABC\tBBC" 2 print(string.expandtabs(50)) 3 結果為: 4 ABC BBC
11、string.format()格式化字元串
1 #不指定編號的 2 print("My name is {}, age is {}".format('string',20)) 3 print("My name is {}, age is {}".format(20,'string')) 4 #指定編號的 5 print("My name is {0}, age is {1}".format('string',20)) 6 print("My name is {1}, age is {0}".format('string',20)) 7 #指定固定指向的 8 print("My name is {name}, age is {age}".format(name = 'string',age = 20)) 9 print("My name is {name}, age is {age}".format(age = 20,name = 'string')) 10 結果為: 11 My name is string, age is 20 12 My name is 20, age is string 13 My name is string, age is 20 14 My name is 20, age is string 15 My name is string, age is 20 16 My name is string, age is 20
12、string.isalnum()表示string中是否所有的字元都為數字或字母,若有除字母和數字之外還有其他字元則返回False,否則返回True。
1 str1 = "this2018" 2 print(str1.isalnum()) 3 str2 = "this 2018" 4 print(str2.isalnum()) 5 str3 = "this%2018" 6 print(str3.isalnum()) 7 str4 = "this$2018" 8 print(str4.isalnum()) 9 結果為: 10 True 11 False 12 False 13 False
13、string.isalpha()表示string是否全部有字元組成。全部為字元返回True,否則返回False。
1 str1 = "this" 2 print(str1.isalpha()) 3 str2 = "this2018" 4 print(str2.isalpha()) 5 str3 = "this%2018" 6 print(str3.isalpha()) 7 結果為: 8 True 9 False 10 False
14、string.decimal()判斷字元是否為十進位的,如果是十進位返回True,否則返回False。
1 str1 = "2018" 2 print(str1.isdecimal()) 3 str2 = "0.125" 4 print(str2.isdecimal()) 5 str3 = "this" 6 print(str3.isdecimal()) 7 str4 = u"this" 8 print(str4.isdecimal()) 9 結果為: 10 True 11 False 12 False 13 False
15、string.identifier()表示字元是否為合法的標識符,如果是則返回True,否則返回False。
1 str1 = "2018" 2 print(str1.isidentifier()) 3 str2 = "_2018" 4 print(str2.isidentifier()) 5 str3 = "123this" 6 print(str3.isidentifier()) 7 str4 = "this" 8 print(str4.isidentifier()) 9 結果為: 10 False 11 True 12 False 13 True
16、string.lower()表示字元string是否全部位小寫字母。如果是返回True,否則返回False。
1 str1 = "2018" 2 print(str1.islower()) 3 str2 = "This" 4 print(str2.islower()) 5 str3 = "THIN" 6 print(str3.islower()) 7 str4 = "this" 8 print(str4.islower()) 9 結果為: 10 False 11 False 12 False 13 True
17、string.isnumeric()判斷是否字元是否全為數字,如果是返回True,否則返回False。
1 str1 = "2018" 2 print(str1.isnumeric()) 3 str2 = "This" 4 print(str2.isnumeric()) 5 str3 = "this2018" 6 print(str3.isnumeric()) 7 結果為: 8 True 9 False 10 False
18、string.isprintable()判斷字元是否可列印,目前沒遇見不可列印的,求舉例。
19、string.isspace()判斷字元是否全為空格,如果全都為空格,返回True,否則返回False。
1 str1 = "2018" 2 print(str1.isspace()) 3 str2 = "" 4 print(str2.isspace()) 5 str3 = " " 6 print(str3.isspace()) 7 結果為: 8 False 9 False 10 True
20、string.title()判斷字元是否為標題,如果是返回True,否則返回False。
1 str1 = "this is good!" 2 print(str1.istitle()) 3 str2 = "This Is Good!" 4 print(str2.istitle()) 5 str3 = "This is good! " 6 print(str3.istitle()) 7 結果為: 8 False 9 True 10 False