目录
1.字符串的查询
2.字符串的大小写转换操作
3.字符串的内容对齐
4.字符串劈分操作
5.判断字符串
6.字符串的替换与合并
7.字符串的比较
8.字符串的切片操作
9.格式化字符串
10.字符串的编码与解码
s='hello,hello'
print(s.index('lo')) #3
print(s.find('lo')) #3
print(s.rindex('lo')) #9
print(s.rfind('lo')) #9
s='hello,python'
a=s.upper() #产生新的对象
print(a) #HELLO,PYTHON
print(s) #hello,python 原本的没有改变
s1='hello,Python' #此处P大写
print(s1.lower()) #hello,python 产生新的对象
print(s1.swapcase()) #HELLO,pYTHON
print(s1.title()) #Hello,Python
s='hello,Python' #字符串长度为12
print(s.center(20,'*')) #****hello,Python****
print(s.ljust(20,'*')) #hello,Python********
print(s.ljust(10,'*')) #hello,Python(指定宽度小于字符串实际长度时,返回原字符串)
print(s.rjust(20)) # hello,Python
print(s.rjust(10)) #hello,Python(指定宽度小于字符串实际长度时,返回原字符串)
print(s.rjust(20,'*')) #********hello,Python
print(s.zfill(20)) #00000000hello,Python
print('-8910'.zfill(8)) #-0008910,0添到了减号之后
#可以通过参数sep指定劈分字符
#通过参数maxsplit指定劈分字符串的最大劈分次数,在经过最大次劈分之后,剩余的子串会单独做为一部分
s='hello world Python'
lst=s.split()
print(lst) #['hello', 'world', 'Python']
s1='hello|world|Python'
lst1=s1.split(sep='|')
print(lst1) #['hello', 'world', 'Python']
print(s1.split(sep='|',maxsplit=1)) #['hello', 'world|Python']
print(s1.rsplit(sep='|',maxsplit=1)) #['hello|world', 'Python']
s='hello,Python'
print('1.',s.isidentifier()) #False,合法的标识符组成是字母、数字、下划线
print('2.','hello'.isidentifier()) #True
print('3.','张三_'.isidentifier()) #True
print('4.','张三123'.isidentifier()) #True
print('5.','\t'.isspace()) #True
print('6.','abc'.isalpha()) #True
print('7.','张三'.isalpha()) #True
print('8.','张三1'.isalpha()) #False
print('9.','123'.isdecimal()) #True
print('10.','123四'.isdecimal()) #False
print('11.','123'.isnumeric()) #True
print('12.','123四'.isnumeric()) #True
print('12.','123四'.isnumeric()) #True
print('13.','abc1'.isalnum()) #True
s='hello,Python'
print(s.replace('Python','world')) #hello,world
s='hello,Python,Python,Python'
print(s.replace('Python','world',2)) #hello,world,world,Python
lst=['hello','Python','world']
print(' '.join(lst)) #hello Python world
print('|'.join(lst)) #hello|Python|world
print(''.join(lst)) #helloPythonworld
t=('hello','Python','world')
print(' '.join(t)) #hello Python world
print('*'.join('Python')) #P*y*t*h*o*n
print('apple'>'app') #True
print('apple'>'banana') #False
print(ord('a'),ord('b')) #97 98,原始值即ASCLL码
print(ord('桑')) #26705
print(chr(97),chr(98)) #a b
print(chr(26705)) #桑
'''==与is的区别
==比较的是 value
is比较的是 id
'''
s='hello,Python'
s1=s[:5]
s2=s[6:]
s3='!'
s4=s1+s3+s2
print(s4)
name='张三'
age=20
print('我叫%s,今年%d岁'%(name,age)) #我叫张三,今年20岁
print('我叫{0},今年{1}岁'.format(name,age)) #我叫张三,今年20岁
print(f'我叫{name},今年{age}岁') #我叫张三,今年20岁
print('%d'%99) #99
print('%10d'%99) # 99,10表示占的宽度
print('%f' %3.1415926) #3.141593
print('%.3f' %3.1415926) #3.142
print('%10.3f' %3.1415926) # 3.142,总宽度为10,保留小数点后三位
print('{}'.format(3.1415926)) #3.1415926
print('{:.3}'.format(3.1415926)) #3.14
print('{0:.3}'.format(3.1415926)) #3.14
print('{0:.3f}'.format(3.1415926)) #3.142
print('{0:10.3f}'.format(3.1415926)) # 3.142
s='天涯共此时'
#编码
#GBK格式中,一个中文占两个字符
print(s.encode(encoding='GBK')) #b'\xcc\xec\xd1\xc4\xb9\xb2\xb4\xcb\xca\xb1'
#UTF-8格式中,一个中文占三个字符
print(s.encode(encoding='UTF-8')) #b'\xe5\xa4\xa9\xe6\xb6\xaf\xe5\x85\xb1\xe6\xad\xa4\xe6\x97\xb6'
byte=b'\xcc\xec\xd1\xc4\xb9\xb2\xb4\xcb\xca\xb1'
#解码
#byte代表一个二进制数据(字节类型的数据)
print(byte.decode(encoding='GBK')) #天涯共此时