在 Python 格式(f-string)字符串中,!r 是啥意思? [复制]

Posted

技术标签:

【中文标题】在 Python 格式(f-string)字符串中,!r 是啥意思? [复制]【英文标题】:In Python format (f-string) strings, what does !r mean? [duplicate]在 Python 格式(f-string)字符串中,!r 是什么意思? [复制] 【发布时间】:2017-12-01 17:14:53 【问题描述】:

我知道 python 3.6 中新的 f 字符串做了什么,但是下面的代码片段中的结尾 !r 呢。

def __repr__(self):
    return (f'Pizza(self.radius!r, 'f'self.ingredients!r)')

【问题讨论】:

对不起,标题中的 a,不知道“a”是怎么进来的。 【参考方案1】:

它只是调用所提供值的repr

f-strings 通常不需要它的用法,因为使用它们你可以做repr(self.radius) 这可以说它的意图更清楚。

!r (repr)、!s (str) 和 !a (ascii) 被保留只是为了简化与 str.format 替代方案的兼容性,您不需要使用他们用 f 字符串。

【讨论】:

python.org/dev/peps/pep-0498/#s-r-and-a-are-redundant 有关于 '!s'、'!r'、'!a' 的详细信息

以上是关于在 Python 格式(f-string)字符串中,!r 是啥意思? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

Python格式化字符串f-string常用用法

python3.6使用f-string来格式化字符串

Python入门教程第77篇 格式化字符串F-strings

Python 字符串格式中的位置参数:str.format vs f-string

转载 Python格式化字符串f-string概览

效率倍增!这4个F-strings 的 Python 小技巧太棒了!