python中字符串是以 单引号 ' 或 双引号 " 引起来的任意的一个或多个字符 如:'abc' 、"abc"
1、字符串是不可变的,更改字符串中的字符会报错
2、截取字符串,会产生一个新的字符串,对原数据无影响
语法格式:字符串[[起始下标start]:[结束下标stop][:][递增基数step]]
说明: start:截取字符串的起始位置(包含),可以省略该参数,默认值为0
stop:截取字符串的结束位置(不包含),可以省略该参数,默认值为长度
step:步长,间隔数,默认值为1,可以写负数, -1:从右向左截取
3、格式化字符串
格式化字符串语法格式: 字符串(字符串中包含格式化字符) % (格式化字符对应的数据)
%s : 可以作为字符串、整型、浮点型的占位符
%d : 可以作为整型、浮点型的占位符,如果作为浮点型占位符,默认保留整数部分
%f : 可以作为整型、浮点型的占位符,默认保留六位小数, %f可以写成 %.nf格式,n代表保留的小数位数。
4、转移字符
\ (斜杠):将原本无意义的字符转换为有意义的字符;将原本有意义的字符转换为无意义的字符
r / R :保留原始字符串, 将所有转义的字符作为普通字符使用,不转义
字符串中的内嵌函数
1、eval(str) :将str中的有效表达式进行运算,并输出结果
2、len(str) : 获取字符串的长度
3、字母大小写转换:对元字符无影响,会产生一个新的字符
lower() 将所有字母小写
upper() 将所有字母大写
swapcase() 将原字符串中的小写转为大写,大写字母转为小写
capitalize() 将首字母大写,其他小写字母小写
title() 将每个单词的首字母大写,其他字母小写
4、返回指定长度及前后符号的字符串,对原字符串无影响,会产生一个新的字符串
str.center(width [,fillchar]) 返回指定长度width的字符串,str在中间,其他位置用fillchar补全,默认fillchar为空格
str.ljust(width [fillchar]) 返回指定长度width的字符串,str在左边,其他位置用fillchar补全,默认fillchar为空格
str.riust(width [,fillchar]) 返回指定长度width的字符串,str在右边,其他位置用fillchar补全,默认fillchar为空格
str.zfill(width) 返回指定长度width的字符串,str在右边,其他位置用0补全
5、检测原字符串中是否含有某一个子字符串
str.find(string [,begin,end]) : 检测str中是否存在string,如果存在,返回第一次找到的下标,如果指定begin与end,在该范 围内查找;如果找不到,返回-1。 从左向右查找
str.rfind(string [,begin,end]): 检测str中是否存在string,如果存在,返回第一次找到的下标,如果指定begin与end,在该 范围内查找;如果找不到,返回-1。 从右向左查找
str.index(string [,begin,end]): 检测str中是否存在string,如果存在, 返回第一次找到的下标,如果指定begin与end,在该 范围内查找;如果找 不到,报错ValueError: substring not found。
str.rindex(string [,begin,end]) : 检测str中是否存在string,如果存在,返回第一次找到的下标,如果指定begin与end,该 范围内查找;如果找 不到,报错ValueError: substring not found。
6、检测原字符串中某一个字符串出现的次数
str.count(string [, begin, end]):检测str中string出现的次数,
如果指定begin与end,在该范围内查找。
7、将字符转为ASCII,将ASCII转为字符
ord(str) 将字符转为ASCII
chr(int) 将ASCII转为字符
汉字可以转为ASCII
8、切割字符串
str.split(string [, count]): 以string切割str字符串,返回一个列表类型的数据,列表中为切割之后的字符串。
count:指定切割次数
str.splitlines([boolean]) 按照行切割字符串(\n \r \n\r),以行为单位切割字符串
boolean: 如果值为True,有换行符;如果值为False,无换行符; 默认值为False
9、链接字符串
str.join(list) 将list列表中的字符串以str作为链接符拼接到一起
10、返回字符串中最大字母或最小字母,比较的是ASCII的值
max() 返回最大的字母
min() 返回最小的字母
11、截掉指定位置的指定元素
string.lstrip([str]) 截掉字符串string左边位置的指定的字符str元素, # 默认str为空格
string.rstrip([str]) 截掉字符串string右边位置的指定的字符str元素, # 默认str为空格
string.strip([str]) 截掉字符串string左边及右边位置的指定的字符str元素, # 默认str为空格
12、替换字符串
str.replace(old,new [,count]) :将str中的old子串替换为new子串,默认全部替换,如果指定count,则替换count个
str.maketrans("noi", "abc") 创建映射表
创建映射表方式一 :第一个参数代表原本的字符,第二个为替换的字符
注:两个参数的字符个数要求一致
创建映射表方式二 : 只写一个参数:参数类型为字典类型 {key : value}
key:为原始字符 value:为替换的字符
string.translate(t) : 根据映射表中的要求替换string中的字符
13、用于判断的函数
1、isalpha() 判断字符串中至少有一个字符,并且所有字符都是字母
2、isalnum() 判断字符串中至少有一个字符,并且所有字符都是数字或字母
3、isdigit() 判断字符串中至少有一个字符,并且所有字符都是数字
4、isspace() 判断字符串中至少有一个字符,并且所有字符都是空格
5、isupper() 判断字符串中至少有一个区分大小写的字符,并且所有区分大小写的字符都是大写
6、islower() 判断字符串中至少有一个区分大小写的字符,并且所有字符都是标题化字符,单词的首字母大写
14、判断开头与结尾
1、string.startswith(str [,start, end]) 判断string是否以str开头,返回True或False,
如果指定start与end,在该范围内判断。
2、string.endswith(str [,start, end]) 判断string是否以str结尾,
返回True或False,如果指定start与end,在该范围内判断。
15、编码解码
1、编码 string.encode(encoding) 以encoding方式对string进行编码
2、解码 string.decode(encoding) 以decoding方式对string进行解码
注,python3.X 默认为utf-8编码 utf-8可以支持解析汉字
以什么方式编码,以什么方式解码