Pyhton中字符串的格式化输出在前面已经总结了,接下来介绍一些常用的字符串操作

先定义一个字符变量,以下的操作都以此为例:



name=" my name is china "  #(首尾有空格)



1.首字母大写(整个字符串的首字母)



print(name.capitalize())



运行结果: my name is china 
并没有变化!是因为第一个字符是空格!如果把第一个空格去掉,结果为:My name is china

2.将所有字母变大写或变小写



print(name.lower())   #把所有字母变成小写
print(name.upper())   #把所有字母变成大写



输出结果分别为:

my name is china 
MY NAME IS CHINA

3.首字母大写(每个单词)



print(name.title())



输出结果为: My Name Is China 

4.大小写互换



print(name.swapcase())



输出结果为: MY NAME IS CHINA 
此方法是:大写变小写,小写变大写

5.统计相同字符的数目



print(name.count("i"))  #统计字符串中字符i的个数



6.Center()方法



print(name.center(50,"-"))



运行结果:



---------------- my name is china ----------------



一共50个字符,字符串以外用指定的“-”来填充,并将字符串变量内容居中

7.判断字符串是否以这个字符结尾



print(name.endswith("ng"))   #判断字符串是否以“ng”结尾



运行结果为:False

8.在字符串中寻找某个子字符串的位置

例如:寻找字符串中“name”的位置



print(name.find("name"))



输出结果为4,即“name”首字母的地址“n”的地址

 

9.去掉字符串两端的空格

有时候为了避免不必要的麻烦,会将用户输入的字符串去掉两端的空格



print(name.strip())



10.去掉字符串左边或右边的空格



print(name.lstrip())   #去掉左边的空格
print(name.rstrip())   #去掉右边的空格



11.字符串的加密



p=str.maketrans("abcedfghij","9876543210")      #编写密码规则
print(name.translate(p))                                               #按照上述密码转换规则将明文翻译成密文



先上运行结果:



my n9m6 1s 721n9



看懂了吗?就是用“9”来替代“a”,“8”来替代“b”,“7”来替代“c”,……,依次类推

12.将字符串中特定字符替换

将字符串中某些旧字符替换成新字符,并返回新的字符串



print(name.replace("m","M",2))



将字符串中前2个“m”替换成“M”

结果为: My naMe is china 

第一个值是被替换字符,第二个值是替换字符,第三个值是被替换的个数(可以省略)

13.字符串切片(截取)

不光列表,字符串也可以切片,而且和列表的操作一样

新定义一个字符串

python 字符串首字母小写 python中字符串首字母大写_字符串

运行结果:

python 字符串首字母小写 python中字符串首字母大写_python_02

 14.获取字符串的长度

len(a)

获取的是字符串的长度(字符数、字节数)。此方法不是字符串的专属,列表、字典等其他数据类型都可以用。列表获取的是元素的个数,字典获取的是key的数量。

15.split()分割函数

split() 通过指定分隔符对字符串进行分割,并返回分割后的字符串列表。如果参数 num 有指定值,则仅分隔 num 个子字符串

split(str,num)

参数:

str:分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。

num: 分割次数(可以省略)



str = "Line1-abcdef \nLine2-abc \nLine4-abcd"
print str.split( )
print str.split(' ', 1 )

#运行结果:
['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', '\nLine2-abc \nLine4-abcd']



 16.index()

print(str.index("L")),输出第一个L的下标