2.25-字符串的格式字符串、函数和方法

2.25-字符串的格式字符串、函数和方法

相关函数:
len:获取字符串的长度
str:
	str(数据) - 将指定数据转化为字符串(任何类型的数据都可以转化为字符串)
        转换的时候,直接在数据的打印值外加引号
eval:
	eval(字符串) - 计算字符串表达式的结果
    str1='20:a,10:v'
    dict1=eval(str1)
    print(dict1)
list1=[]
s=set()
t=()
dict1={}
str1=''
print(type(list1))
print(type(s))
print(type(t))
print(type(dict1))
print(type(str1))
相关方法:

1.join

字符串.join(序列) - 将序列中的元素用指定字符串拼接出一个字符串(序列中的元素必须是字符串)
list1 = ['name', 'age', 'gender']
result = '+'.join(lsit1)
print(result) 	#'name+age+gender'
result = '♥'.join(list1)
print(result) 	#'name♥age♥gender'

2.split 和 rsplit

字符串1.split(字符串2) - 将字符串1中所有的字符串2作为切割点对字符串进行切割
字符串1.split(字符串2,N) - 将字符串1中前N个字符串2作为切割点对字符串进行切割
字符串1.rsplit(字符串2.N) - 将字符串1中后N个字符串2作为切割点对字符串进行切割
str1='abc*123*JKK'
result=str1.split('*')
print(result)   #['abc','123','jkk']

注意:如果切割点在字符串的开头、结尾或连续出现,切完后会出现空串

str1='*abc*123*JKK*'
result=str1.split('*')
print(result)   #['','abc','123','jkk','']

3.replace - 替换字符串

字符串1.replace(字符串2,字符串3)- 将字符串1中所有的字符串2替换成字符串3
字符串1.replace(字符串2,字符串3,N) -  将字符串1中前N个的字符串2替换成字符串3
str1 = 'how are you? i am fine,thank you! and you? '
result = str1.replace('you', 'me')
print(result)

4.替换字符

str.maketrans(字符串1,字符串2)  -  创建字符串1中所有字符和字符串2中所有字符一一对映关系
字符串.translate(字符对应表) -  按照字符对应表的关系将字符串中的字符进行替换
str1 = '一九4acl三5clm2'
table = str.maketrans('1234567', '一二三四五六天')
result = str1.translate(table)
print(result)

5.删除空白 - 空格、缩进和换行符

字符串.strip() -  删除字符串两端的空白
字符串.rstrip() - 删除字符串右端的空白
字符串.lstrip() - 删除字符串左端的空白
字符串.strip('/') -  删除字符串两端的/符号

6.统计个数

字符串1.count(字符串2) -  统计字符串1中字符串2出现的个数
字符串1.count(字符) -  统计字符串1中字符出现的个数
格式字符串:
字符串的内容不确定怎么办?
name = input('请输入姓名:')
age = input('请输入年龄:')
#xxx今年xx岁

1.字符串拼接:

massage = name + '今年' + str(age) + '岁!'
print(massage)

2.格式字符串

包含格式占位符的字符串 %(数据1,数据2,...)
注意:()中数据的个数必须与字符串中占位符一一对应(个数和类型)
格式占位符:
	%s: - 字符串占位符,可以对应任意类型的数据
    %d: - 整数占位符,可以对应任何数字,小数会自动取整
    %f: - 浮点数占位符,可以对应任何数字,整数会自动加小数点
#xxx今年xx岁
#'%s今年%d岁' % (name,age)
name='诡神'
age=18
message = '%s今年%d岁' % (name,age)
print(message)

3.f.string

1)基本语法 - f'{表达式}'
2)加参数 - f'{提供数据表达式:参数}'
a.控制小数位数的参数 - f'{表达式:.NF}' - 保留N位小数
money = 223.8
result = f'金额:{money}元'
result = f'金额:{money:.2f}元'
print(result)
b.金额数值显示加逗号
只加逗号:   f'{表达式:,}'
加逗号并且控制小数位数:    f'{表达式:,.Nf}'
money = 18000000000
result = f'{金额:{money:,}元'
print(result)
c.显示百分比 - f'{:表达式:.N%}'
x = 0.34
result = f'增长率:{x:.2%}'
print(result)
d.控制长度
x = '诡神'
result = f'姓名:{x:0>3}' #姓名:0诡神
result2 = f'姓名:{x:0<3}' #姓名:诡神0
print(result,result2)

练习:

name='诡神'
武功='九转神功'
age=99
敌人='蚊蝇'
num=30000
time=3424467
message = '%s修炼%s%d年怒杀%s%d只最长飞行时间%.2f秒' % (name,武功,age,敌人,num,time)
print(message)
message = f'{name}修炼{武功}{age}年怒杀{敌人}{num}只最长御空{time}秒'
print(message)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值