溫馨提示×

Python打印對象和str()函數

小樊
103
2024-06-24 23:21:30
欄目: 編程語言

在Python中,我們可以使用print()函數來打印對象的內容。下面是一個示例:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

person = Person("Alice", 30)
print(person)

在上面的示例中,我們定義了一個名為Person的類,然后創建了一個Person對象person,并使用print()函數打印了這個對象。當我們運行這段代碼時,輸出結果可能是:

<__main__.Person object at 0x000001F9A760C400>

這是因為默認情況下,print()函數會打印對象的內存地址。如果我們想打印對象的具體內容,可以在類中定義__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})"

person = Person("Alice", 30)
print(person)

在這個示例中,我們在Person類中定義了__str__()方法,該方法返回一個包含對象內容的字符串。當我們再次運行這段代碼時,輸出結果將是:

Person(name=Alice, age=30)

除了使用__str__()方法之外,我們還可以使用str()函數將對象轉換為字符串,如下所示:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

person = Person("Alice", 30)
person_str = str(person)
print(person_str)

在這個示例中,我們使用str()函數將Person對象person轉換為字符串,并將結果打印出來。輸出結果將是:

<__main__.Person object at 0x000001F9A760C400>

請注意,如果我們沒有在類中定義__str__()方法,則使用str()函數將返回對象的內存地址。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女