python的f-string字符串格式化你了解多少python支持字符串格式化输出,当你需要遍历,改变某一个字符串里面
python支持字符串格式化输出,当你需要遍历,改变某一个字符串里面的特定内容时,你可能会使用,当你遇到非常复杂的表达式,将一个变量插入到一个字符串中,你也可能用到。
在程序中,看到%s,%d这样的操作符,这就是python中字符串格式化的符号,调用字符串format方法,也是python中字符串格式化的一种方式。
使用格式化符号(python2.x和python3.x)
常见的格式化符号如下:
格式化符号 | 含义 |
---|---|
%s | 通过str()字符串转换来格式化 |
%d | 有符号的十进制整数 |
%f | 浮点实数 |
使用方式
name = '小李'
print('我的名字是%s'%name)
age = 27
print('今年%d岁'%age)
height = 1.75
print('身高%f米'%height)
# 限制输出浮点数保留多少位小数,下面是保留两位小数
print('身高%.2f米'%height)
输出
我的名字是小李
今年27岁
身高1.750000米
身高1.75米
format()格式化输出(python3.x)
把传统的%替换为{}来实现格式化输出,省去了格式化字符格式的要求
name = '小李'
print('我的名字是{}'.format(name))
age = 27
print('今年{}岁'.format(age))
height = 1.75
print('身高{}米'.format(height))
# 限制输出浮点数保留多少位小数,下面是保留三位小数
print('身高{:.3f}米'.format(height))
# 可以按照索引位置进行输出
print('数字{1}{2}和{0}'.format("123",456,'789'))
# 有两层大括号,输出的结果只有一层大括号
print('数字{{{1}{2}}}和{0}'.format("123",456,'789'))
# 允许一个参数用两次
print('{1}{0}{1}岁'.format('小李',27))
# 可以通过添加关键字参数
print('{name}{age}岁'.format(age=27,name='小李') )
输出
我的名字是小李
今年27岁
身高1.75米
身高1.750米
数字456789和123
数字{456789}和123
27小李27岁
小李27岁
f-string新版本引入的新特性
最基础的简单用法,直接在字符串前添加前缀f,向字符串中的{}内直接填入要嵌入的变量
name = '小李'
print(f'我的名字是{name}')
f-string这个新特性使我们写出来的代码简洁了不少,可读性也变强了。 在拼接sql语句和其他方面使用也是非常nice的。
具体更多f-string新引入的特性可以参考下方链接 f-string新特性
转载自:https://juejin.cn/post/6992917461909635103