跳转至

F-string 嵌套

短命二郎

2023年7月12日 12:54:31

Python 3.12.0b4 发布了,预计这是 β 阶段的最后一版。

2015年前后引入了 f-string。

>>> from math import pi
>>> print(f"{pi = :.3f}")
pi = 3.142

但一直对嵌套不太友好。例如下面这段程序必须用四种不同的引号,并且不可能进一步嵌套。

f"""{f'''{f'{f"{1+1}"}'}'''}"""

PEP 701 解决了这一问题,以后你可以用同一种引号无限嵌套了。

f"{f"{f"{f"{f"{f"{1+1}"}"}"}"}"}"

Python Release Python 3.12.0b4 | Python.org

PEP 693 – Python 3.12 Release Schedule | peps.python.org

PEP 701 – Syntactic formalization of f-strings | peps.python.org