Python 带格式说明符的 f 字符串条件语句

Python conditional statements in f-string with format specifiers

在此代码段中:

b = False
print(f'{a if b else ""}')

我想为 a 使用格式说明符,例如a:.2f。 None 这些与 Python 3.10 一起工作:

print(f'{a:.2f if b else ""}')
print(f'{(a:.2f) if b else ""}')
print(f'{{a:.2f} if b else ""}')

解决方法是什么?


我想将条件保留在 f 字符串中,因为在多行字符串的不同位置会有一些条件。

如果使用其中两个,则可以将条件保留在 f-string 中,第二个用于 a:.2f

print(f'{f"{a:.2f}" if b else ""}')