python __repr__(self)是什么方法
时间: 2024-09-23 15:06:49 浏览: 133
Python中__repr__和__str__区别详解
5星 · 资源好评率100%
`__repr__(self)`是Python中的一个特殊方法,也叫做“代表者”(representor)函数。当你需要获取某个对象的字符串形式,以便于在代码中表达这个对象时,就会调用这个方法。它的主要用途有:
1. 内置的交互式解释器(如IDLE)中,当你尝试打印一个对象时,会显示`__repr__`的结果。
2. 当你在调试模式下,使用`print()`或`repr()`函数时,它返回的是一个更易理解的对象描述,通常包含足够的信息以便你能识别对象的类型及其属性。
编写`__repr__`的一个典型目标是保证它在不同上下文下的输出一致,并且有助于开发者快速判断对象的状态。如果`__repr__`未显式定义,Python会尝试生成一个“简洁但有用的”字符串表示。
举个例子,如果你有一个自定义的Person类,你可以像这样定义`__repr__`:
```python
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __repr__(self):
return f"Person(name={self.name}, age={self.age})"
```
然后当你打印一个Person对象时,你会看到类似这样的结果:“Person(name=John, age=30)”。
阅读全文