"""
语法:在字符串的最前面加f或者F,就可以在字符串中通过{}来提供数据,{}中可以是任何有结果的表达式
"""
name ='小明'
str1 =f'x:{name}, y:{100}, z:{100*2+3}, m:{name *2}, n:{name.replace("小","xiao")}'print(str1)
name ='Jay'
saying ='唉哟,不错哟!'
str1 =f'{name}:{saying}'print(str1)
2)添加参数:{提供数据的表达式:参数}
"""
a. .Nf -- 保留N位小数
b. , -- 用逗号将数据三位三位分开
c. ,.Nf -- 使用逗号的同时保留N位小数
d. .N% -- 将小数转换成百分比,百分数保留N位小数,默认6位
e. X>N或者X<N -- X是填充字符(如果没有X表示用空格填充),N是长度;> - 填前面;< - 填后面
"""
money =19852
str1 =f'月薪:{money:.2f}'print(str1)# 月薪:19852.00
num =19800000000print(f'数量为:{num:,}')# 数量为:19,800,000,000print(f'数量为:{num:,.2f}')# 数量为:19,800,000,000.00
rate =0.78print(f'运动鞋的占比:{rate:.2%}')# 运动鞋的占比:78.00%
num =1print(f'学号:Python2106{num:0>3}')# 学号:Python2106001print(f'学号:Python2106{num:0<3}')# 学号:Python2106100
stu1 ='罗成'
stu2 ='程咬金'print(f'姓名:{stu1:<10} 年龄:18')print(f'姓名:{stu2:<10} 年龄:18')
salary =19852.53print(f'10月工资:{salary:,.0f}')
proportion = salary/1000000print(f'工资占比:{proportion:.2%}')
二、字典推导式
"""
{键值对 for 变量 in 序列}
{键值对 for 变量 in 序列 if 条件语句}
dict(有且只有两个元素的小序列 for x in 序列)
dict(有且只有两个元素的小序列 for x in 序列 if 条件语句)
"""
dict1 ={x: x*2for x in'abc'}print(dict1)# {'a': 'aa', 'b': 'bb', 'c': 'cc'}# 交换字典的键和值
dict2 ={'a':10,'b':20,'c':30}
new_dict2 ={dict2[x]: x for x in dict2}print(new_dict2)# {10: 'a', 20: 'b', 30: 'c'}
new_dict2 =dict((dict2[x], x)for x in dict2)print(new_dict2)# 练习:已经一个字符串,将字符串转换成字典,键是字符串中的每个字符,值是字符对应的编码值# 'abcA' -> {'a': 97, 'b': 98, 'c': 99, 'A': 65}
str1 ='abcA'
result ={x:ord(x)for x in str1}print(result)# {'a': 97, 'b': 98, 'c': 99, 'A': 65}