我们可以在 Python 中转义包含花括号的逐字字符串吗?

Can we escape verbatim string containing curly braces in Python?

我正在使用 pyodbc 库将我的 Python 程序连接到 SQL 服务器数据库。我想使用下面的逐字字符串构造 Connection String

connection_string =  f"DRIVER={SQL SERVER};SERVER={server};Database={database};Trusted_Connection=yes;App={app}"

通过 \{ 转义 { 无效。

还通过在文字开头放置 fr 而不是 f 来使其既逐字又原始,但没有用。

请帮忙

当您需要单个大括号时,您应该使用 {{}}。来自 the docs:

The parts of the string outside curly braces are treated literally, except that any doubled curly braces '{{' or '}}' are replaced with the corresponding single curly brace. A single opening curly bracket '{' marks a replacement field, which starts with a Python expression.