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())不懂
posted @ 2017-07-16 19:50  屌丝爱篮球  阅读(173)  评论(0编辑  收藏  举报