带计算值的格式化字符串 Python

Formatted string with calculated values in Python

在 JavaScript 中,我可以使用模板文字并包含计算值。例如:

var a = 3;
var b = 8;
var text = `Adding ${a} + ${b} = ${a+b}`;   //  Adding 3 + 8 = 11

我知道 python 有 f'…' 个字符串,str.format() 有占位符。有什么方法可以在字符串中包含计算吗?

使用f-string

a = 3
b = 8    
text = f'{a} + {b} = {a + b}'

本例中的text变量是一个包含'3 + 8 = 11'.

的字符串

使用str.format

a = 3
b = 8
text = '{0} {1} = {2}'.format(a, b, a + b)

使用str.format

a = 3
b = 8    
text = '{0} + {1} = {2}'.format(a,b,a+b)
print(text)

使用f-string:

f'{a} + {b} = {a + b}'

他们都做同样的事情:

a,"+",b,"=",a+b