python杂七杂八的用法
1.strip三种用法
name = '*egon**' print(name.strip('*')) print(name.lstrip('*')) #左边 print(name.rstrip('*')) #右边
2.startswith,endswith
endswith:方法用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回True,否则返回False,
startwith:指定开头
name = 'huangxu_sun' print(name.endswith('sun')) print(name.startswith('huangxu'))
3.replace
把旧的替换成新的,1是指替换相同字符中的第一个,默认全都替换
name = 'alex say:i have one tesla,my name is alex' print(name.replace('alex','sb',1))
4.format的三种玩法
res = '{} {} {}'.format('egon',18,'male') print(res) res1 = '{2} {1} {0}'.format('egon',18,'male')#位置默认从0开始,将位置参数出入大括号 print(res1) res2 = '{name} {age} {sex}'.format(name='egon',sex='male',age=18)#根据变量传参,与后面参数的位置无关 print(res2)
5.find,rfind,index,rindex,count
name = 'egon say helloe' print(name.find('g',1,3))#默认索引从0开始,顾头不顾尾,找不到则返回-1不会报错,找到了则显示索引 print(name.index('e'))#同上找不到会报错 print(name.count('e'))#顾头不顾尾,如果不指定范围则查找所有,返回的是字符出现的次数,参数是固定查找范围
6.split以列表形式返回
name = 'root:x:0::/root:/bin/bash' print(name.split(':'))#默认分隔符是空格 name ='C:/a/b/c/d.txt'#只想拿到顶级目录 print(name.split('/',1)) name = 'a|b|c' print(name.rsplit('|',1))#从右边开始切分
7.join返回一个字符串,它是字符串的连接,可迭代的对象必须都是字符串.
tag = ' ' print(tag.join(['egon','say','hello','world']))
8.center,ljust,rjust,zfill
name = 'egon' print(name.center(30,'-')) print(name.ljust(30,'*'))#右边填满* print(name.rjust(30,'*'))#左边填满* print(name.zfill(50))#用0填充
9.expandtabs
返回使用空格扩展所有制表符的S的副本。 如果没有提供tabize,则假定选项卡大小为8个字符。
name = 'egon\thello' print(name) print(name.expandtabs(1))
10.lower,upper
name = 'ENF' print(name.lower())#转换成小写 print(name.upper())#大写
11.captalize,swapcase,title
name='huangxu' print(name.capitalize())#首字母大写 print(name.swapcase())#大小写翻转 msg = 'huangxu say hi' print(msg.title()) #每个单词首字母都大写
12.is数字系列,在python3中
num1 =b'4' #byte num2 =u'4' #unicode,python3中无需加u就是unicode num3 ='四' #中文数字 num4 ='Ⅳ' #罗马数字 print(num1,num2,num3,num4)
(1)isdigit:字符都为数字返回Ture,bytes,unicode
print(num1.isdigit()) #返回True print(num2.isdigit()) #True print(num3.isdigit()) #False print(num4.isdigit()) #False
(2)isdecimal:只有十进制字符,则返回True.uncicode
bytes类型无isdecimal方法 print(num2.isdecimal())#返回True print(num3.isdecimal())#False print(num4.isdecimal())#False
(3)isnumberic:只有数字字符,则返回True,unicode,中文数字,罗马数字
bytes类型无isnumberic方法 print(num2.isnumeric())#Ture print(num3.isnumeric())#Ture print(num4.isnumeric())#Ture
(4)
三者不能判断浮点数 num5='4.3' print(num5.isdigit()) print(num5.isdecimal()) print(num5.isnumeric())
总结:
最常用的是isdigit,可以判断bytes和unicode类型,这也是最常见的数字应用场景
如果要判断中文数字或罗马数字,则需要用到isnumeric.
(5)is 其他用法
name = 'huangxu111' print('=====>') print(name.isalnum())#字符串只能由数字和字母组成 print(name.isalpha())#字符串只由字母组成 name2='QQQASD' print(name.isidentifier())#是有效的标识符,则返回True print(name.islower())#所有包装字符都为小写,则返回True print(name2.isupper())#所有包装字符均为大写,则返回True print(name2.isspace())#所有字符都是空格,则返回True print(name.istitle())不懂
没有激情的人生并不完美。