改变对象的字符串显示-华为云大数据中台架构分享

时间:2024-07-01 05:00:37
【文件属性】:

文件名称:改变对象的字符串显示-华为云大数据中台架构分享

文件大小:5.68MB

文件格式:PDF

更新时间:2024-07-01 05:00:37

Python cookbook 中文 参考

8.1 改变对象的字符串显示 问题 你想改变对象实例的打印或显示输出,让它们更具可读性。 解决方案 要改变一个实例的字符串表示,可重新定义它的 __str__() 和 __repr__() 方法。 例如: class Pair: def __init__(self, x, y): self.x = x self.y = y def __repr__(self): return 'Pair({0.x!r}, {0.y!r})'.format(self) def __str__(self): return '({0.x!s}, {0.y!s})'.format(self) __repr__() 方法返回一个实例的代码表示形式,通常用来重新构造这个实例。 内置的 repr() 函数返回这个字符串,跟我们使用交互式解释器显示的值是一样 的。 __str__() 方法将实例转换为一个字符串,使用 str() 或 print() 函数会输 出这个字符串。比如: >>> p = Pair(3, 4) >>> p Pair(3, 4) # __repr__() output >>> print(p) (3, 4) # __str__() output >>> 我们在这里还演示了在格式化的时候怎样使用不同的字符串表现形式。 特别来 讲,!r 格式化代码指明输出使用 __repr__() 来代替默认的 __str__() 。 你可以 用前面的类来试着测试下: >>> p = Pair(3, 4)


网友评论