Dieser Artikel bietet Ihnen eine Einführung in die Verwendung von hasattr(), getattr() in Python (Codebeispiele). Ich hoffe, dass dies der Fall ist Dir helfen.
1. hasattr(object, name)
Bestimmen Sie, ob das Objekt ein Namensattribut enthält. Wenn ja, wird True zurückgegeben, wenn nicht , es wird False zurückgegeben.
class MyClass(object): name = 'jack' age = '22' obj = MyClass() print(hasattr(obj, 'name')) # True print(hasattr(MyClass, 'age')) # True print(hasattr(obj, 'gender')) # False
2. getattr(object, name, [default])
wird verwendet, um die Attribute oder Methoden des Objekts abzurufen und sie auszudrucken, wenn sie verfügbar sind . Wenn nicht, geben Sie den Standardwert aus. Wenn der Standardwert nicht festgelegt ist, wird ein Fehler gemeldet
class MyClass(object): name = 'jack' age = '22' def func(self): return 'hello world!!!' obj = MyClass() print(getattr(MyClass, 'name')) # jack print(getattr(obj, 'age')) # 22 print(getattr(MyClass, 'func')) # <function MyClass.func at 0x000001ACDE9A9AE8> print(getattr(obj, 'func')) # <bound method MyClass.func of <__main__.MyClass object at 0x000001D1505D01D0>> # print(getattr(MyClass, 'func1')) # 没有设置默认值,找不到方法会报错: AttributeError: type object 'MyClass' has no attribute 'func1' print(getattr(MyClass, 'func1', None)) # 设置了默认值None,找不到就会返回默认值: None print(getattr(MyClass, 'func')('self')) # hello world!!! print(getattr(obj, 'func')()) # hello world!!!
3 > wird verwendet, um dem Attributschlüssel des Objekts einen Wert zuzuweisen. Wenn der Schlüssel nicht vorhanden ist, erstellen Sie zuerst den Attributschlüssel und weisen Sie ihm dann einen Wert zu >Verwenden Sie die drei Methoden zusammen:
class MyClass(object): name = 'jack' age = '22' obj = MyClass() setattr(MyClass, 'name', 'tom') print(getattr(MyClass, 'name')) # tom setattr(obj, 'age', 28) print(getattr(obj, 'age')) # 28 setattr(MyClass, 'gender', 'male') print(getattr(MyClass, 'gender')) # male print(getattr(obj, 'gender')) # male setattr(obj, 'hobby', 'skating') print(obj, 'hobby') # <__main__.MyClass object at 0x00000209F5070630> hobby print(MyClass, 'hobby') # <class '__main__.MyClass'> hobby
Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung von hasattr(), getattr() und setattr() in Python (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!