是的,Python的print()
函數(shù)可以打印自定義對(duì)象。當(dāng)你嘗試打印一個(gè)自定義對(duì)象時(shí),Python會(huì)調(diào)用該對(duì)象的__str__()
或__repr__()
方法來(lái)獲取一個(gè)字符串表示。如果對(duì)象沒有實(shí)現(xiàn)這兩個(gè)方法中的任何一個(gè),那么Python會(huì)使用默認(rèn)的字符串表示,通常是對(duì)象的類型和內(nèi)存地址。
例如,如果你有一個(gè)自定義的類Person
,你可以通過實(shí)現(xiàn)__str__()
方法來(lái)自定義打印時(shí)的輸出格式:
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)