python-str的常用操作方法


# upper lower
#不会对原字符串进行任何操作,都是产生一个新的字符串
s = 'XiaoChaoYin'
s1 = s.upper()
print(s1) # XIAOCHAOYIN
s2 = s.lower()
print(s2) # xiaochaoyin

#startswith 判断是否以...开头
#endswith 判断是否以...结尾
# 也可以进行切片来判断
s = 'XiaoChaoYin'
print(s.startswith('X')) #True
print(s.startswith('x')) #False
print(s.endswith('n')) #True
print(s.endswith('N')) #False
print(s.startswith('a',2)) #True
print(s.startswith('a',2,6)) #True 2-6是不是以a开头(顾头不顾腚)

# replace 替换
s = '小超人,无所不能的小超人'
s1 = s.replace('超人','超银')
s2 =s.replace('超人','超银',1)
print(s1) #小超银,无所不能的小超银
print(s2) #小超银,无所不能的小超人

# strip 去除空白、空格、\t,\n
# 可以去除指定的字符
s = ' 小超银 '
i = s.strip()
print(i) # 小超银

s1 = 'rre小超银qsd'
i1 = s1.strip('qdsre')
print(i1) # 小超银

s2 = 'rre小超r银qsd'
i2 = s2.strip('qdsre')
print(i2) #小超r银 (机制:从前往后,从后往前去除。如遇到不是筛选的字符,则停止去除)

#split
#分割,最终形成一个列表此列表不含有这个分割的元素。
#默认按照空格分隔,返回一个类别
#str ---> list

s = '小超银 男生 帅气'
l = s.split()
print(l) #['小超银', '男生', '帅气']
# 也可以指定分隔符进行分隔
s1 = '小超银,男生,帅气'
l1 = s1.split(',')
print(l1) #['小超银', '男生', '帅气']

s2 = ':小超银:男生:帅气'
l2 = s2.split(':')
print(l2) #['', '小超银', '男生', '帅气']
#如果只是想让前2个:分割,最后一个不想分割
s3 = ':小超银:男生:帅气'
l3 = s3.split(':',2)
print(l3) #['', '小超银', '男生:帅气']

# join
s = 'xiaochaoyin'
l = '+'.join(s)
print(l) # x+i+a+o+c+h+a+o+y+i+n

s1 = ['小超银','男生','帅气']
#前提:列表里的元素必须都是str类型
l1 = '-'.join(s1)
print(l1) #小超银-男生-帅气

#count
#数字符串中的元素出现的个数。
s = 'xiaochaoyin'
print(s.count('a')) #2


# format 格式化输出
#第一种用法
s = '我叫{},今年{},性别{}'.format('小超银',18,'男')
print(s) # 我叫小超银,今年18,性别男
#第二种用法
s1 = '我叫{0},今年{1},我依然叫{0}'.format('小超银',18)
print(s1) # 我叫小超银,今年18,我依然叫小超银
#第三种用法
s2 ='我叫{name},今年{age},性别{sex}'.format(age=25,sex='男',name='小超银')
print(s2) # 我叫小超银,今年25,性别男

#is
name='xiaochaoyin123'
print(name.isalnum()) #True 字符串由字母或数字组成
print(name.isalpha()) #False 字符串只由字母组成
print(name.isdecimal()) #False 字符串只由十进制组成
 


posted @ 2020-05-17 19:53  无所不能的小超银  阅读(285)  评论(0编辑  收藏  举报