所有的python数据类型都是python的一个内置的类,定义一个字符串时,会调用str类的内置函数,而字符串的诸多功能都是在调用str类的函数。
1.字符串的初始化
#s1与s2等价
s1 = ''
s2 = str()
#s3与s4等价
s3 = 'str'
s4 = str('str')
2.str()用来初始化字符串或将其他数据类型转换为字符串型
3.str类的常用功能
字符串的方法,一般是执行一个功能,返回新字符串,而原字符串不改变。
- capitalize() :将字符串的首字母变大写
- center():将字符串居中,7表示字符串总长度,‘-’表示两边空白处用‘-’填充
s1 = 'str'
print(s1.center(7, '-'))
#输出:--str--
- count():计算字符串中某个子串(可以是单个字符也可以是多个字符)出现的次数
- endswith():字符串是否以某字符或字符串结尾(返回True或False)
- startswith():字符串是否以某字符或字符串开始(返回True或False)
- find():寻找某个字符或字串在字符串中第一次出现的位置,找不到则返回-1
- rfind()
- index():寻找某个字符或字串在字符串中第一次出现的位置,找不到则报错
- rindex()
- format():按照占位符向字符串填充内容,示例如下,输出结果如右侧注释所示
s = 'name:{0};age:{1}'
print(s.format('davi', 20))#name:davi;age:20
print(s)#name:{0};age:{1}
- isalnum():字符串中是否全是字母或数字
- isalpha():字符串中是否都是字母
- isdigit():字符串中是否都是数字
- islower():字符串是否都是小写字母
- isupper():字符串中是否都是大写字母
- isspcae():字符串中是否都是空格
- istitle():字符串是否是标题
- title():将字符串转化为标题
- upper():将字符串中所有的字母转化为大写
- lower():将字符串中所有的字母转化为小写
- swapcase():将字符串中所有的字母大小写互换
- ljust():(传入2个参数,字符串宽度,右侧填充字符)将字符串左对齐,右侧用传入的字符填充
- rjust():(传入2个参数,字符串宽度,左侧填充字符)将字符串右对齐,左侧用传入的字符填充
- strip():将字符串最左最右边的空格去除
- lstrip():将字符串最左边的空格去除
- rstrip():将字符串最右边的空格去除
- split():将字符串按照传入的字符或字符串分隔,并返回一个列表,不传入参数默认按空格分割
- rsplit():将字符串按照传入的字符或字符串分隔(从右开始),并返回一个列表,不传入参数默认按空格分割
- replace():将字符串中的某字符/字符串用新的字符/字符串代替
- partition():将字符串按照传入的字符或字符串分隔,包括传入的参数,并返回一个元组
- rpartition():与上同,从右开始
4.字符串的索引,切片,循环
索引:下标-1表示返回最后一个字符
切片中的三个数字分别表示字符中的起始、终止位置和步长。切片范围为左闭右开。
s = 'Name: {0}; Age: {1}'
#索引
print(s[0], s[-1])#N }
#切片
print(s[0:9])#Name: {0}
print(s[0:9:2])#Nm:{}
print(s[8:0:-2])#}{:m
#循环(可迭代的)
for i in s:
print(i)