1 字符串操作
1.1 拼接
字符串使用“+”运算符可以进行多个字符串的拼接,产生一个字符串对象。
字符串不允许与其他类型数据直接拼接,解决方法为将其他类型数据转化为字符串,可使用str()函数
1.2 计算长度
len(string) #计算字符串的长度,所有字符默认一字符
len(string.encode()) #计算UTF-8编码字符长度
len(string.encode('gbk')) #计算GBK编码字符长度
1.3 截取(切片)
string[start : end : step]
1.4 分割合并
1.4.1使用split()方法进行分割
str.split(sep,maxsplit)
str:要分割的字符串
sep:指定分隔符,可包含多个字符,默认None,即所有空字符(包含空格,换行符“\n”,制表符“\t”等)
maxsplit:可选参数,指定分割的次数,不指定默认为-1,分割次数无限制
返回值:分隔后的字符串列表
1.4.2 使用join()方法进行合并
strnew = string.join(iterable)
strnew:表示合并后的新字符串
string:字符串类型,用于指定合并时的分隔符
iterable:可迭代对象,将被合并并以string作为分隔符
1.5 检索字符串
1.5.1 count()方法,find()方法,index()方法
str.count(sub[,start[,end]])
str.find(sub[,start[,end]])
str.index(sub[,start[,end]])
str:原字符串
sub:要检索的字符串
start:可选参数,表示检索范围的起始位置的索引,默认从头开始
end:可选参数,表示检索范围的结束位置的索引,默认检索到尾
返回值
count()方法返回要检索的字符串在原字符串中出现的次数
find()方法返回首次出现要检索的字符串的索引,若不存在返回-1
index()方法返回值同find()方法,只不过在不存在时抛出异常
1.5.2 单纯判断指定字符串是否存在
print(sub in str)
存在返回True,否则返回False
1.5.3 startswith()方法与endswith()方法
检索字符串是否以指定字符串开头或结尾,如果是返回True,否则返回False
str.startswith(sub[,start[,end]])
str.endswith(sub[,start[,end]])
str:原字符串
sub:要检索的字符串
start:可选参数,表示检索范围的起始位置的索引,默认从头开始
end:可选参数,表示检索范围的结束位置的索引,默认检索到尾
1.6 字母大小写转换
lower()方法与upper()方法
str.lower() #将字符串中的大写字母转换为小写字母
str.upper() #将字符串中的小写字母转换为大写字母
1.7 去除字符串中空格,特殊字符一以及指定字符
strip()方法,lstrip()方法,rstrip()方法
str.strip([chars]) #去除字符串左右两侧的空格和特殊字符
str.lstrip([chars]) #去除字符串左侧的空格和特殊字符
str.rstrip([chars]) #去除字符串右侧的空格和特殊字符
str:要做去除处理的字符串
chars:可选参数,指定去除的的字符,可指定多个,默认去除空格和编程特殊字符
1.8 字符串格式化
1.8.1 使用format()方法
创建模板
{[index][:[[fill]align][sign][#][width][.precision][type]]}
index:可选参数,指定设置格式的对象在参数列表的索引位置,从0开始,若省略根据值的先后顺序自动分配
fill:可选参数,指定空白处填充的字符
align:可选参数,指定对其方式,需要配合width一起用。<左对齐,>右对齐;=表示内容右对齐,符号最左侧,并只对数字类型生效;^内容居中
sign:可选参数,用于指定有无符号(+表示正数加+,负数加-;-表示正数不变负数加-;值为空格表示正数加空格,负数加-
#:可选参数,显示二进制,八进制,十六进制的前缀(0b/0o/0x)
width:可选参数,指定所占宽度
.precision:可选参数,用于指定保留的小数
type:可选参数用于指定类型
常用的格式化字符
格式化字符 | 说明 |
---|---|
s | 定义字符串 |
d | 定义十进制整数 |