【问题标题】:How do I add curly brackets to f-strings in Python 3? [duplicate]如何在 Python 3 中为 f 字符串添加大括号? [复制]
【发布时间】:2021-07-05 09:46:01
【问题描述】:

我有这个代码

class = "maximum"
s = f"""The code for {class} is {3854-st56}"""
print(s)

我想要这个输出:

>> The code for maximum is {3854-st56}

但 f-string 无法识别 3854-st56 周围的大括号,而是认为我正在尝试输入实际的 Python 代码。如何让 f 字符串识别大括号是字符串文字。

【问题讨论】:

    标签: python python-3.x f-string


    【解决方案1】:

    如果要分配变量值,则需要使用curly bracket 两次,如果要输入值,则需要使用一次:

    Class = "maximum"
    s = f"""The code for {{{Class}}} is {{'3854-st56'}}"""
    print(s)
    

    The code for {maximum} is {3854-st56}
    

    【讨论】:

    • 使用双括号 {{ 或 }} 使您的代码变为: sb.AppendLine(String.Format("public {0} {1} {{ get; private set; }}", prop.类型,道具。名称)); // 对于 "Foo" 的 prop.Type 和 "Bar" 的 prop.Name,结果将是: // public Foo Bar { get;私人套装; }
    【解决方案2】:

    要转义花括号,请复制它们:

    >>> x="abc"
    >>> f"{x} {{x}}"
    'abc {x}'
    

    您还可以查看 PEP 了解更多信息:https://www.python.org/dev/peps/pep-0498/#escape-sequences

    【讨论】:

      猜你喜欢
      • 2017-07-20
      • 2022-11-18
      • 2021-08-22
      • 2023-01-29
      • 1970-01-01
      • 2021-07-27
      • 2020-12-12
      • 2021-11-30
      相关资源
      最近更新 更多