请介绍一下__repr__方法
时间: 2023-10-25 13:08:07 浏览: 83
Python 的 __str__ 和 __repr__ 方法对比
__repr__方法是Python中内置的一个特殊方法,用于返回一个对象的字符串表示形式,通常用于调试和开发的目的。它的作用是返回一个可以用来重新创建该对象的有效Python表达式的字符串。在Python中,我们可以使用内置函数repr()来获取一个对象的__repr__方法的返回值。
__repr__方法应该返回一个字符串,这个字符串包含可读性强的表达式,这个表达式能够表示出该对象的状态。如果没有实现__repr__方法,则会默认调用__str__方法来进行输出。
举个例子,假设我们有一个名为Person的类,它有两个属性name和age,我们可以实现一个__repr__方法来返回这个对象的字符串表示形式:
```
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对象,并使用repr()函数来获取它的字符串表示形式:
```
person = Person('Alice', 25)
print(repr(person)) # 输出:Person(name='Alice', age=25)
```
可以看到,__repr__方法返回了一个字符串,这个字符串是一个有效的Python表达式,可以用来重新创建这个Person对象。
阅读全文