创建字符串
字符串是不可变数据类型,创建后不可修改
只能新建一个字符串,用原来的标签去覆盖它
>>> s1 = 'I ' + "Love " + 'You!'
>>> s1
'I Love You!'
>>> s2 = '''从前车马很慢
书信很长
一生只够爱一人'''
>>> s2
'从前车马很慢\n书信很长\n一生只够爱一人'
>>> print(s2)
从前车马很慢
书信很长
一生只够爱一人
>>> s1 = r'Hello,Beijing\t\\'
>>> s2 = 'Hello,Beijing\t\\'
>>> s1
'Hello,Beijing\\t\\\\'
>>> print(s1)
Hello,Beijing\t\\
>>> s2
'Hello,Beijing\t\\'
>>> print(s2)
Hello,Beijing \
字符串中的常用方法
capitalize、title
capitalize(self, /)
用于把字符串的第一个字母变为大写
title(self, /)
用于把字符串中每个单词的第一个字母变为大写
>>> s1 = 'hello beijing'
>>> s2 = 'hello,beijing'
>>> s1.capitalize()
'Hello beijing'
>>> s2.capitalize()
'Hello,beijing'
>>> s1.title()
'Hello Beijing'
>>> s2.title()
'Hello,Beijing'
upper、lower、casefold
upper(self, /)
用于把字符串都转换成大写
lower(self, /)
用于把字符串都转换成小写
casefold(self, /)
用于把字符串都转换成小写
可用于非英文的字符
>>> s1 = 'Hello Beijing'
>>> s2 = 'Hello,Beijing'
>>> s1.upper()
'HELLO BEIJING'
>>> s2.upper()
'HELLO,BEIJING'
>>> s1.lower()
'hello beijing'
>>> s2.lower()
'hello,beijing'
>>> s1.casefold()
'hello beijing'
>>> s2.casefold()
'hello,beijing'
lstrip、rstrip、strip
lstrip(self, chars=None, /)
用于去除字符串左侧的空格、换行符、制表符
rstrip(self, chars=None, /)
用于去除字符串右侧的空格、换行符、制表符
strip(self, chars=None, /)
用于去除字符串两侧的空格、换行符、制表符
可设置chars以去除其他字符
>>> s1 = '\t\n abc \n\t'
>>> s2 = 'aabbcc'
>>> s1.lstrip()
'abc \n\t'
>>> s1.rstrip()
'\t\n abc'
>>> s1.strip()
'abc'
>>> s2.strip('ac')
'bb'
split
split(self, /, sep=None, maxsplit=-1)
用于以字符sep分割字符串,默认分割为空格
maxsplit=-1意为不限分割次数
>>> s1 = 'Hello Beijing'
>>> s2 = 'Hello,Beijing'
>>> s1.split()
['Hello', 'Beijing']
>>> s2.split(',')
['Hello', 'Beijing']
center
center(self, width, fillchar=' ', /)
用于将字符串居中放置
接受一个width参数表示字符串长度
使用fillchar把字符串填充至width长度
>>> s1 = 'Love'
>>> s1.center(10)
' Love '
>>> s1.center(10,'_')
'___Love___'
count
count(sub[, start[, end]])
用于统计sub在字符串中出现的次数
start和end参数表示范围,可选
>>> s1 = "abcdabcdabcd"
>>> s1.count('abcd')
3
>>> s1.count('abcd',2)
2
>>> s1.count('abcd',2,8)
1
encode
encode(self, /, encoding='utf-8', errors='strict')
用于以encoding指定的编码格式对字符串进行编码
>>> s1 = 'Hello,Beijing'
>>> s2 = s1.encode()
>>> type(s1)
<class 'str'>
>>> type(s2)
<class 'bytes'
>>> s2
b'Hello,Beijing'
format
format(*args, **kwargs)
使用 {} 进行字符的替换
>>> '{0} {1} {2}!'.format('I','love','you')
'I love you!'
>>> '{a} {b} {c}!'.format(a='I',b='love',c='you')
'I love you!'
>>> '{0} {1} {a}!'.format('I','love',a='you')
'I love you!'