一、字符串 

  字符串是一个有序的字符集合,用于存储和表示基本的文本信息,单引号、双引号和三引号包含的内容称之为字符串。

  字符串的特性:

  1、按照从左到右的顺序定义字符集合,下标从0开顺序访问,有序

   2、可以像列表那样进行切片操作

  3、字符串不可变,不能像列表那样进行修改其中的某个元素。

  字符串的操作方法有很多,下面介绍一下比较常用的操作。

二、常用操作

  1、capitalize()

  capitalize() 函数是将字符串的首字母变成大写,其余变成小写。

s_tr = 'mY naMe is LiLei'
print(s_tr.capitalize())
结果:
My name is lilei

  2、lower()

  lower()函数是将字符串中的大写字符全部变为小写。

s_tr = 'mY naMe is LiLei'
print(s_tr.lower())
结果:my name is lilei

  3、upper()

  upper()函数是将字符串中的小写字符全部变为大写。

s_tr = 'mY naMe is LiLei'
print(s_tr.upper())
结果:MY NAME IS LILEI

  4、strip()

  strip() 函数以后经常用到,作用是将字符串前后的空格去掉。

  此外还有lstrip() 和 rstrip() 函数,lstrip()函数是将字符串左侧的空格去除,rstrip()函数是将字符串右侧的空格去除。

  5、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()函数类似。

   6、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

  7、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

  8、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

  9、join()

  join(self,iterable)函数是将列表、元组等而可迭代的对象用特定字符拼接起来,形成新的字符串。

List = ["my", "name", "is", "lilei"]
s_tr = '-'
print(s_tr.join(List))
结果:my-name-is-lilei

  10、find()

  find(self,sub,start,end) 是找出指定的字符元素在字符串中的位置,返回的是第一个结果的索引值

s_tr = "my name is lilei"
print(s_tr.find("m"))
结果:0

  11、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

  12、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

 13、zfill()

  zfill(self,width)函数是在字符串左侧填充0.

st = "My name is lilei"
print(st.zfill(25))
结果:000000000My name is lilei