是的,Python的print()
函数可以打印自定义对象。当你尝试打印一个自定义对象时,Python会调用该对象的__str__()
或__repr__()
方法来获取一个字符串表示。如果对象没有实现这两个方法中的任何一个,那么Python会使用默认的字符串表示,通常是对象的类型和内存地址。
例如,如果你有一个自定义的类Person
,你可以通过实现__str__()
方法来自定义打印时的输出格式:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"Person(name={self.name}, age={self.age})"
p = Person("Alice", 30)
print(p) # 输出: Person(name=Alice, age=30)