目录
1.定义
字符串就可以理解为一堆字符连在一起,由双引号或单引号引起来。例如
str1 = "一二三四", str2 = '五六七八',字符串类型包容性很强,引号里可以包含几乎所有的字符。\ 是转义字符,例如\n是换行,\t是tab缩进。用三引号标注的是注释,例如在文档开头使用三引号注释的是文档注释,可以使用__doc__访问,放在函数内部就是函数注释
2.特殊用法
字符串加法:可以通过加号使两个字符串拼接起来
字符串乘法:字符串可以用乘号使当前字符串重复n次
3.常用方法
format:格式化字符串,可以将format括号内的内容填充到字符串的花括号里,例如:
# 将括号内的数据按顺序一次放入字符串的花括号内
print("{} {} {} {}".format(1, 2, 3, 4))
# 在花括号内加上索引可以指定填入哪个位置的数据,索引从0开始
print("{0} {3} {2} {1}".format(1, 2, 3, 4))
find: 查询字符串里某个子字符串的索引,如果查不到,则返回-1
index:和find的功能类似,也是查找子字符串索引,但是如果查询不到会报错
s = "abcdefghijk"
# find查询子字符串索引
print(s.find("efg"))
# 查询不到会返回-1("edg"不是s的子字符串)
print(s.find("edg"))
# index查询子字符串索引
print(s.index("efg"))
index查询不到报错ValueError: substring not found(未找到子字符串)
startswith:比较字符串是否以某个内容开头,返回True 或 False
endswith:比较字符串是否以某个内容结尾,返回True 或 False
split:字符串切割,这是字符串操作中比较常用的用法,作用是分割字符串并返回一个列表,默认为碰到空格分割一次,括号内可以自定义切割的参数以及切割次数。
s = "a b c a b c a b c"
# 切割字符串s,默认碰到空格切割一次,返回一个列表
print(s.split())
# 自定义为以字符b作为切割条件,切割次数为2
print(s.split("b", 2))
join:也是使用比较多的一个方法,作用是拼接字符串
s1 = "abc"
s2 = "def"
s3 = "123"
s4 = "".join([s1, s2, s3])
print(s4)
# join前的双引号代表连接符,空就是没有,也可以使其他字符
s5 = "***".join([s1, s2, s3])
print(s5)
capitalize:使字符串的第一个字母大写
title:使字符串中的每一个单词的首字母大写
upper:使字符串里的所有字母转为大写
lower:使字符串里的所有字母转为小写
swapcase:使字符串中的字母大小写转换
replace:替换,将字符串里所有的某类子字符串替换为后面字符串的内容,需要注意的是替换过后可以发现原字符串并未发生改变,因为字符串是不可变类型,可以定义一个变量去保存替换过后的字符串
center:字符串在一定宽度内居中,两侧填充字符,默认填充空格
s = "a1b1c1d1"
# 表示s在宽度20内居中,两侧填充字符"*"
print(s.center(20, "*"))
ljust:字符串在一定宽度内居左,右侧填充字符,默认填充空格
rjust:字符串在一定宽度内居右,左侧填充字符,默认填充空格
strip:剔除字符串左右两侧连续的某字符,注意是只能剔除连续的字符,中间的并不能剔除掉
s = "***123**456*****"
# 剔除字符串s两侧的"*"
print(s.strip("*"))
count:计数,统计字符串中共有几个括号内的子字符串
数据类型判断:有很多数据类型判断的方法,如isalpha判断字符串是否为纯字母,isdigit判断字符串是否为纯数字等