字符串.center(宽度,填充字符)
——通过在两边添加填充字符(默认为空格)让字符串居中
>>> '居中'.center(12) ' 居中 ' >>> '居中'.center(12,'-') '-----居中-----'
字符串.find(子串,起点,终点)
——在字符串中查找子串,可指定搜索范围。如果找到,则返回子串第一个字符的索引,否则返回-1
>>> 'ABCDEFG'.find('G') 6 >>> 'ABCDEFG'.find('GG') -1 >>> 'ABCDEFG'.find('ABCD') 0
>>> 'ABCDEFG'.find('ABCD',0,2)
-1
'连接符'.join(序列名称)
——用于合并序列,转换为字符串
>>> date = ['2021年','7月','14日'] >>> ''.join(date) '2021年7月14日' >>> '-'.join(date) '2021年-7月-14日'
如果序列中的元素为数字,则会报错
>>> date = [2021,7,14] >>> '-'.join(date) Traceback (most recent call last): File "<pyshell#23>", line 1, in <module> '-'.join(date) TypeError: sequence item 0: expected str instance, int found
需要先把序列里的元素转换为str格式,如下
>>> date = [2021,7,14] >>> "-".join('%s' %i for i in date) '2021-7-14'
字符串.lower()
——将字符串转换为小写。可用于查询场景(不区分大小写字母),比较输入值和数据库值
>>> 'ABCDEFG'.lower() 'abcdefg'
字符串.replace('指定子串','替换字符串')
——将指定子串都替换为另一个字符串,并返回替换后的结果
>>> '我叫张三张三'.replace('张三','李四') '我叫李四李四'
字符串.split('分隔符')
——用于将字符串拆分为序列,如果没有指定分隔符,将默认在单个或多个连续的空白字符(空格、制表符、换行符等)处进行拆分
>>> 'a1, a2, a3, a4, a5,'.split() ['a1,', 'a2,', 'a3,', 'a4,', 'a5,'] >>> 'a1, a2, a3, a4, a5,'.split('a') ['', '1, ', '2, ', '3, ', '4, ', '5,'] >>> 'a1, a2, a3, a4, a5,'.split(',') ['a1', ' a2', ' a3', ' a4', ' a5', '']
字符串.strip('指定字符,可以为多个')
——用于删除字符串开头和末尾的空白(但不包含中间的空白),并返回删除后的结果。与lower一样,可用于查询比较
>>> ' 123 11 11 '.strip() '123 11 11'
>>> ' **-*-*-*现在是2021年-*7月-*14日-*-*& '.strip(' -*&')
'现在是2021年-*7月-*14日'
字符串.translate('转换表'),需要先创建转换表
——与replace一样可以替换字符串的特定部分,但不同的是它只能进行单字符替换,这个方法的优势在于能够同时替换多个字符,因此效率比replace高
>>> table = str.maketrans('abc','123')#a替换为1,b替换为2,c替换为3 >>> '步骤a,步骤a,步骤b,步骤c'.translate(table) '步骤1,步骤1,步骤2,步骤3'
在创建转换表时,还可提供可选的第三参数,指定要将哪些字符删除
>>> table = str.maketrans('abc','123','步骤') >>> '测试步骤a,测试步骤a,测试步骤b,测试步骤c'.translate(table) '测试1,测试1,测试2,测试3'
判断字符串是否满足特定条件
——isspace,字符串是否全为空白,返回布尔值
——isdigit,字符串是否全为数字,返回布尔值
——issupper,字符串是否全为大写,返回布尔值