我们都知道字符串和元组都是不可变类型,但字符串有着众多的方法,包括查、改、删、增。
查
1.count 计数功能
s = 'abdvgd245's.count('d')>>>2s.count('abd')>>>1
2.index 查找元素,返回索引
s = 'anxg54ds's.index('anx')>>>0s.index('x')>>>2
3. find 查找元素,返回索引,与index的区别是多了一个参数,即第二个参数是从此位置开始查找.
s = 'addgga154's.find('dd')>>>1s.find('g')>>>3s.find('a')>>>0s.find('a','1')>>>5
4. isdigit 判断是否全部是数字组成的字符串
s = 'safa145's.isdigit()>>>False
5. isalpha 判断是否全部是字母组成的字符串
s = 'daffsgv's.isalpha()>>>True
6. endswith 判断是否以obj结尾
7. startswith 判断是否以obj开头
s = 'dfsjahjf's.endswith('f')>>>Trues.startswith('d')>>>Trues.startswith('f')>>>False
8. islower 判断字符串内的字母是否都是小写字母组成
9. isupper 判断字符串内的字母是否都是大写字母组成
s = 'dfadsf4515's.islower()>>>Trues.isupper()>>>Falseb = 'DSFS5451D'b.islower()>>>Falseb.upper()>>>True
10. isalnum 判断是否全部是字母和数字任意混合组成的字符串
11.isdecimal 判断是否全部是十进制数字组成的字符串
改
由于字符串是不可变类型,所以要想修改,只能用新的变量来承接它,不然它实质还是没变的.
1. upper 把所有小写字母改成大写
2. lower 把所有大写字母改成小写
s = 'dfAFD125's.upper()>>>'DFAFD125's.lower()>>>'dfafd125'
3. strip 把字符串两边空格都去掉,lstrip是去左边,rstrip是去右边.
s = ' dss dsv 's.strip()>>>'dss dsv's.lstrip()>>>'dss dsv 's.rstrip()>>>' dss dsv'
4. capitalize 把字符串第一个字符改为大写
5. title 把字符串内所有单词(以空格,逗号,数字等形式分隔开的字符)的首字母改成大写
s = 'df da4jf,dg's.capitalize()>>>'Df da4jf,dg's.title()>>>'Df Da4Jf,Dg'
6. split 默认是以空格进行切割,可传入一个参数,以此参数进行切割,返回一个列表.
s = 'dsfdgjdb's.split(d)>>>['','sf','gi','b']
7.swapcase 翻转字符串的大小写
s = 'DDdvvdS's.swapcase()>>>'ddDVVds'
8.center 把字符串居中,并以空格填充长度至指定参数的大小.
s = 'dsdf's.center(10)>>>' dsdf '
删
1.replace 有三个参数,第一个是被替换的obj,第二个是替换成的obj,第三个是可选参数,是最大替换数目.如果想实现删除,只需将第二个参数写成''即可.
s ='sffsdfgd's.replace('f','')>>>'ssdgd's.resplace('f','F',2)>>>'sFFsdfgd'
增
- 利用+号进行拼接
- 格式化字符串 如:print ("%s%s"%str1%str2)
- 使用join ' '.join([str1,str2,str3])
- 使用format ‘{}{}{}'.format(str1,str2,str3)、 ‘{0}{2}{1}'.format(str1,str2,str3)指定了选择的参数位置 、‘{n0}{n1}{n2}'.format(n0=str1,n1=str2,n2=str3)
字符串的转义
1. \n 换行符
2. \t 水平制表符,即空四个空格
3. \b 退格
4. \r 回车,当前位置移到本行开头并覆盖
5. \\ 代表反斜杠
6. \' 代表一个单引号,同样"也可以这样
7. \0 代表一个空字符
8. \a 系统提示音
在python中如果想去掉字符串的转义,只需在字符串前加r 例如:r'fsaa\nad'
字符串的格式化
- %d 数字
- %f 浮点数
- %s 字符
- %c ASCII码
- %o 八进制数
- %x 十六进制
- %e 科学计数法
- %r 数字和字符都可以
补充:如'%a.bf'%23.12586,其中a的正负代表右对齐还是左对齐,a的大小表示保留的总个数,b代表保留多少位小数。
如 '%as'%'sdfsh',其中a表示格式化长度。
format了解:
'{:.2f}'.format(12.333) 保留小数点后两位
'{a:.2f}'.format(a=12.333)
'{:.2%}'.format(0.333) 百分比格式
'{:x}'.format(20) 转换成十六进制
'{:o}'.format(20) 转换成八进制
' {a:<10}’.format(a=12.3,b=13.44) 左对齐,长度为10
' {a:0<10}'.format(a=12.3,b=13.44) 数字补x (填充右边, 宽度为4)
' {a:0>10}’.format(a=12.3,b=13.44) 右对齐...
' {a:0^10}'.format(a=12.3,b=13.44) 两边对齐...
'{
{ hello {0} }}'.format('python’) 转义{和}符号f = ' hello {0} '.format f('python’) 这里可以把format当作一个函数来看