python中的%r是什么意思

python中的%r是什么意思,第1张

python中的%r是什么意思

背景:

在Python中,有两个内置函数可将对象转换为字符串

str
vs
repr
.。
str
应该是一个易于理解的友好字符串。
repr
应该包含有关对象内容的详细信息(有时,它们会返回相同的内容,例如整数)。按照惯例,如果有一个Python表达式可以转换为==的另一个对象,
repr
则将返回这样的表达式,例如

>>>打印代表('hi')'hi'#注意此处的引号,而不是...>>>打印str('hi')你好

如果返回表达式对对象没有意义,

repr
则应返回被<和>符号包围的字符串,例如
<blah>

要回答您的原始问题:

%s
<-> <->
str

%r
repr

此外:

您可以通过实现

__str__
__repr__
方法来控制自己的类的实例转换为字符串的方式。

class Foo:  def __init__(self, foo):    self.foo = foo  def __eq__(self, other):    """Implements ==."""    return self.foo == other.foo  def __repr__(self):    # if you eval the return value of this function,    # you'll get another Foo instance that's == to self    return "Foo(%r)" % self.foo


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5616521.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存