python print方法能打印自定義對(duì)象嗎

小樊
82
2024-09-25 07:54:11

是的,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)

0