关于字符的常用操作:(字符为不可变长度的类型,故不能“增”、“删”等改变长度的操作)
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,' ',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 BBC" 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