python __str__
时间: 2023-10-17 14:14:34 浏览: 74
`__str__` 是一个特殊的方法,用于定义打印对象时的输出字符串。当我们使用 `print(obj)` 打印一个对象时,实际上是调用了这个对象的 `__str__` 方法,将其返回的字符串进行输出。
在 Python 中,所有的对象都有一个默认的 `__str__` 方法,它返回的字符串格式为 `<类名 object at 内存地址>`。如果我们想要自定义一个对象的打印格式,可以在类中定义 `__str__` 方法来实现。
下面是一个简单的例子:
```python
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"{self.name} ({self.age} years old)"
person = Person("Alice", 30)
print(person) # 输出: Alice (30 years old)
```
在这个例子中,我们定义了一个 `Person` 类,包含 `name` 和 `age` 两个属性。在 `__str__` 方法中,我们返回了一个字符串,包含了这个对象的姓名和年龄。当我们使用 `print(person)` 打印 `person` 对象时,实际上是调用了 `person.__str__()` 方法,输出了这个字符串。
阅读全文