📌  相关文章
📜  Python3.8 f-string 中的新 '=' 运算符(1)

📅  最后修改于: 2023-12-03 15:04:19.649000             🧑  作者: Mango

Python3.8 f-string 中的新 '=' 运算符

在 Python3.8 中,新增了一种在 f-string 中使用的新的运算符 =。这个运算符的作用是在 f-string 中使用表达式,并将结果赋值给新的变量,使得在整个 f-string 中都可以使用这个变量。

示例

下面是一个使用 = 运算符的例子:

name = 'Mike'
age = 25

# 使用 '=' 运算符定义一个新的变量
msg = f'{name} is {age=} years old!'

print(msg)  # Mike is age=25 years old!

在这个例子中,我们使用 = 运算符将 age 变量的值赋值给了一个新的变量 age,并将结果插入到了 f-string 中。

注意事项

需要注意的是,使用 = 运算符时,必须将整个表达式封装在圆括号中,否则会抛出一个语法错误。

# 错误的示例
msg = f'{name} is {age = } years old!'  # 抛出语法错误

# 正确的示例
msg = f'{name} is {age=} years old!'  # age 的表达式写在圆括号内

此外,使用 = 运算符时,表达式中不能出现赋值语句,否则同样会抛出一个语法错误。

结论

使用 = 运算符可以使得 f-string 中更加灵活地使用表达式,减少了冗余的代码。不过需要注意的是,在使用 = 运算符时,要封装整个表达式在圆括号内,并且不能包含赋值语句。