透過字串存取物件屬性
考慮這樣一個場景,您有一個物件t 和一個表示t 屬性名稱的字串x 。如何檢索或修改此屬性的值?
Python 語言為此操作提供了方便的機制:
getattr() 和setattr() 函數:
Python 提供了getattr()和setattr() 內建函數來動態存取和修改物件屬性。這些函數採用以下語法:
getattr(object, attrname) # Retrieves the attribute value setattr(object, attrname, value) # Sets the attribute value
範例:
在給定的程式碼片段中:
class Test: def __init__(self): self.attr1 = 1 self.attr2 = 2 t = Test() x = "attr1"
取得值x代表的屬性,可以使用:
x = getattr(t, 'attr1')
來設定屬性的值由x 到21表示:
setattr(t, 'attr1', 21)
此方法提供了一種靈活且動態的方式來存取和修改物件屬性,在使用動態資料結構或表示屬性名稱的字串時特別有用。
以上是如何在Python中使用字串存取和修改物件屬性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!