四、字符串及其内置方法
数据类型
1、数字类型:
int,float
十进制转换成其他进制:
print(bin(13)) #二进制
print(oct(13)) #八进制
print(hex(13)) #十六进制
类型转换:
print(int(3.1))
print(int('12')) #只可转换数字
2、字符串str类型(有序、不可变类型):
把任意类型转换成字符串
类型转换:
res=str(任意数据类型)
msg='hello world'
以下关于字符串的重要部分:
*****(第一掌握):
1、按索引取值(正向取+反向取):只能取值不能改
正向取:msg[0]
反向取:msg[-1],msg[-2]
2、切片
正向切片,步长为正
print(msg[0:5:1]) #起始位置:结束位置:步长
msg[2:] #从索引为2开始切片
msg[:] #整个切片
反向切片,步长为负
msg[-1:-5:-1]
翻转字符串:
msg[-1::-1]
3、长度len:统计的是字符的个数
4、成员运算in , not in
5、移除空白strip:移除字符串两边的某些字符串
msg=' hello '
msg.strip(' ') 去空格
6、切分split: -------------->把字符串分割转换成列表
把有规律的字符串切成列表从而方便取值
info='egon:18:age:150'
res=info.split(':')
print(res) #####['egon', '18', 'age', '150']
res=info.split(':',1)
print(res)
7、拼接join ------------->把只含字符串元素的列表转换成字符串
res1 = ':'.join(res)
print(res1) ##### egon:18:age:150
****(需要掌握):
1、 strip('*')
lstrip('*')
rstrip('*')
2、 msg.lower()转小写
msg.upper()转大写
3、 startwith('x')
endswith('x')
4、format三种玩法 ------->格式化字符串
'my name is {name},my age is {age}'.format(age=18,name='egon)
'my name is {}{},my age is {}{}'.format(18,'egon)
5、split、rsplit
6、replace
msg='alex xxx alex'
msg.replace('alex','sb',2)
7、isdigit 当字符串内为纯数字时结果为True
res='111'
print(res.isdigit()) ###True
总结: 最常用的是isdigit,可以判断bytes和unicode类型,这也是最常见的数字应用场景 如果要判断中文数字或罗马数字,则需要用到isnumeric
**(了解):
count('*') #计数某字符或字符串出现的次数
find() #找一串字符在字符串中的起始索引位置,找不到返回一个-1
rfind('***') #从右边找
index() #同find,找不到报错
center(50,'*') #居中
ljust(50,'*')
ljust(50,'*')
zfill(50) #用0填充
capitalize #首字母大写
swapcase #所有大写变小写,小写变大写
title #标题首字母大写
isalnum() #字符串由字母或数字组成
isalpha() #字符串只由字母组成