1、字符串 api
字符串是一个有序的字符集合,用于存储和表示基本的文本信息,单引号、双引号和三引号包含的内容称之为字符串。ide
字符串的特性:函数
一、按照从左到右的顺序定义字符集合,下标从0开顺序访问,有序spa
二、能够像列表那样进行切片操做code
三、字符串不可变,不能像列表那样进行修改其中的某个元素。orm
字符串的操做方法有不少,下面介绍一下比较经常使用的操做。对象
2、经常使用操做blog
一、capitalize()索引
capitalize() 函数是将字符串的首字母变成大写,其他变成小写。ip
s_tr = 'mY naMe is LiLei' print(s_tr.capitalize()) 结果: My name is lilei
二、lower()
lower()函数是将字符串中的大写字符所有变为小写。
s_tr = 'mY naMe is LiLei' print(s_tr.lower()) 结果:my name is lilei
三、upper()
upper()函数是将字符串中的小写字符所有变为大写。
s_tr = 'mY naMe is LiLei' print(s_tr.upper()) 结果:MY NAME IS LILEI
四、strip()
strip() 函数之后常常用到,做用是将字符串先后的空格去掉。
此外还有lstrip() 和 rstrip() 函数,lstrip()函数是将字符串左侧的空格去除,rstrip()函数是将字符串右侧的空格去除。
五、split()
split()函数是将字符串按照某个指定的字符,或者符号将字符串分割,并将分割的元素放入列表中,最终返回的是一个列表。
用法 split(分隔符,最大分割次数),若是不写分隔符和最大分割次数,默认分隔符为空格,并所有将字符串进行分割。
s_tr = 'my name is LiLei' print(s_tr.split()) 结果:['my', 'name', 'is', 'LiLei'] s_tr = 'my name is LiLei' print(s_tr.split(" ",maxsplit=2)) # 以空格为分割符,最大分割数为2,默认从左侧开始计数 结果:['my', 'name', 'is LiLei']
还有rsplit()函数,是从字符串右侧开始进行分割,用法和split()函数相似。
六、count()
count(self,sub,start=None,end=None)函数是统计指定的字符在字符串中的数量,能够经过start 和 end来控制字符串的查询范围。
s_tr = 'my name is LiLei' print(s_tr.count("m")) s_tr = 'my name is LiLei' print(s_tr.count("m", 0, 5)) 结果: 2 1
七、startswith()和endswith
startswith(self,sub,start=None,end=None) 和 endswith(self,sub,start,end) ,这两个函数分别表示以什么字符开头或结尾,返回True和False。
s_tr = 'my name is LiLei' print(s_tr.startswith("m")) s_tr = 'my name is LiLei' print(s_tr.endswith("i")) 结果: True True
八、center()、ljust(), rjust()
center(self,width,fillchar) 函数是将字符串两端用特定的符号进行填充,字符串居中显示,width宽度指的是显示的总宽度,若是设定值小于字符串长度,将起不到填充效果。
s_tr = 'my name is LiLei' print(s_tr.center(30, "-")) s_tr = 'my name is LiLei' print(s_tr.center(10, "-")) # 设定总宽度小于字符串宽度 结果: -------my name is LiLei------- my name is LiLei
ljust(self,width,fillchar)是在字符串右侧填充特殊字符,rjust(self,width,fillchar)是在字符串左侧填充特殊字符。
st = "My name is lilei" print(st.ljust(20, "-")) print(st.rjust(20, "-")) 结果: My name is lilei---- ----My name is lilei
九、join()
join(self,iterable)函数是将列表、元组等而可迭代的对象用特定字符拼接起来,造成新的字符串。
List = ["my", "name", "is", "lilei"] s_tr = '-' print(s_tr.join(List)) 结果:my-name-is-lilei
十、find()
find(self,sub,start,end) 是找出指定的字符元素在字符串中的位置,返回的是第一个结果的索引值
s_tr = "my name is lilei" print(s_tr.find("m")) 结果:0
十一、replace()
replace(self,old,new,count) 函数是对字符串中的某个元素用新的字符进行替换,count不指定默认将字符串中的旧字符所有替换,指定的话,只对旧字符进行指定次数的替换。
s_tr = "my name is lilei" print(s_tr.replace("m", "M")) s_tr = "my name is lilei" print(s_tr.replace("m", "M", 1)) 结果: My naMe is lilei My name is lilei
十二、format()
format(self,*args,**kwargs) 是一种格式化字符串的函数。基本语法是经过{}和:来替代以前的%。format函数能够接受不限个数参数,位置也能够不按顺序。
st = "My name is {0}, age is {1}" print(st.format("lilei", 18)) st = "My name is {name}, age is {age}" print(st.format(age=18, name='lilei')) 结果: My name is lilei, age is 18 My name is lilei, age is 18
1三、zfill()
zill(self,width)函数是在字符串左侧填充0.
st = "My name is lilei" print(st.zfill(25)) 结果:000000000My name is lilei