likes
comments
collection
share

python的f-string字符串格式化你了解多少python支持字符串格式化输出,当你需要遍历,改变某一个字符串里面

作者站长头像
站长
· 阅读数 43

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
数字456789123
数字{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
评论
请登录