针对字符串类型的变量,Python提供的内置函数就更加丰富了。
len():返回字符串的长度。
print(len("15812345678")) --返回11
lower():大写转小写;
str="Hello,World!" print(str.lower())
upper():小写转大写;
str="Hello,World!" print(str.upper())
casefold():大写转小写;
capitalize():首字母转大写;
swapcase():大小写互换;
str1="Hello,World!" str2="hello,world!" print(str1.casefold()) print(str2.capitalize()) print(str1.swapcase())
str[begin:end:step] :对字符串切片。
- Begin:截取的开始位置(包括该位置本身);若大于0,则代表从前向后的位置;若小于0,则代表从后往前的位置;
- End:截取的结束位置(不包括该位置本身) ;若大于0,则代表从前向后的位置;若小于0,则代表从后往前的位置;
- Step:步长;若大于0,则从前向后取;若小于0,则从后向前取;默认为1;
str="abcdefghij" str[1:5]="bcde" str[:]="abcdefghij" str[:-6]="abcd" str[1:5:2]="bd" str[-1:-5:-2]="jh"
切片时,可使用从前向后的位置索引,也可以使用从后向前的位置索引。两个方向的位置索引如下:
count():查找字符串a在字符串b中出现的次数,若不存在,则返回0;否则返回出现的次数;
str1="Hello,my name is jam!" print(str1.count("am")) print(str1.count("am",15)) print(str1.count("am",10,18))
find():查找字符串a在字符串b中第一次出现的位置(从第0位开始),若不存在,则返回-1;否则返回第一次出现的位置;
str="Hello,my name is jam!" str[1:5]="bcde" str[:]="abcdefghij" str[:-6]="abcd" str[1:5:2]="bd" str[-1:-5:-2]="jh"
rfind():与find()类似,但是从右向左查找。
print(str.rfind("m")) print(str.rfind("m",2)) print(str.rfind("m",8,15))
index():与find函数功能一样,只不过当查找的字符串不存在时,index函数会抛出异常,如果对异常没有处理,则程序会报错退出;
str="Hello,my name is jam!" print(str.index("m")) print(str.index("m",2)) print(str.index("m",8,15)) #print(str.index("hello")) #抛出错误异常
rindex():与index()类似,只是从右向左查找。
print(str.rindex("m")) print(str.rindex("m",2)) print(str.rindex("m",8,15))
startwith():判断字符串是否以指定的字符串开头;
str="Hello,my name is jam!" print(str.startswith("Hello")) print(str.startswith("hello"))
endwith():判断字符串是否以指定的字符串结尾;
str="Hello,my name is jam!" print(str.endswith("!")) print(str.endswith("!"))
replace():将字符串中的旧内容替换为新内容(默认全部替换,第三个参数指定最多替换多少次);
str="Hello,my name is jam!" print(str.replace("m","M")) print(str.replace("m","M",2))
strip():去除字符串左、右两边的空格及特殊字符,或指定字符;
str=" Hello,my name is jam!\n" print(str.strip()) str="Hello,my name is jam!!!" print(str.strip("H!"))
lstrip():与strip函数的功能相似,只不过只会去除字符串左边的空格及特殊字符,或指定字符;
rstrip():与strip函数的功能相似,只不过只会去除字符串右边的空格及特殊字符,或指定字符;
特殊字符包括:空格、制表符\t、回车符\r、换行符\n
还有一些其他的字符串内置函数,但使用的并不多。
str="Hello2008" print(str.isalnum()) #是否全是字母和数字,并至少有一个字符 print(str.isalpha()) #是否全是字母,并至少有一个字符 print(str.isdigit()) #是否全是数字,并至少有一个字符 print(str.isspace()) #是否全是空白字符,并至少有一个字符 print(str.islower()) #str中的字母是否全是小写 print(str.isupper()) #str中的字母是否全是大写 print(str.istitle()) #str是否是首字母大写的