學習Python中的setattr()函數:設置對象的特定屬性

Python的setattr()函數可以用於設置對象的特定屬性。它是一個內置函數,可以在對象上設置屬性,並將其值設置為指定的值。它的語法如下:

setattr(object, name, value)

其中,object是要設置屬性的對象,name是要設置的屬性名稱,value是要設置的屬性值。

setattr()函數可以用於動態地設置對象的屬性,而不需要在對象上定義該屬性。它可以用於動態地添加新屬性,也可以用於更新現有屬性的值。

舉個例子,假設我們有一個名為Person的類,它有一個名為name的屬性:

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

p = Person("John")
print(p.name)

執行上面的程式碼,將會輸出:

John

現在,假設我們想為Person類添加一個新的屬性age,可以使用setattr()函數來動態地設置對象的屬性:

setattr(p, "age", 20)
print(p.age)

執行上面的程式碼,將會輸出:

20

可以看到,我們可以使用setattr()函數動態地為對象添加新的屬性,並將其值設置為指定的值。

此外,setattr()函數也可以用於更新現有屬性的值:

setattr(p, "age", 30)
print(p.age)

執行上面的程式碼,將會輸出:

30

可以看到,我們可以使用setattr()函數更新現有屬性的值。

總結,Python的setattr()函數可以用於設置對象的特定屬性。它可以用於動態地添加新屬性,也可以用於更新現有屬性的值。

發佈留言