Maison >développement back-end >Tutoriel Python >Python sur la réflexion et les méthodes membres spéciales des classes
Cet article partage avec vous les méthodes spéciales des membres de Python sur la réflexion et les cours. Il est très bon et a une valeur de référence. Les amis qui en ont besoin peuvent s'y référer
Réflexion.
La réflexion signifie qu'il y a 4 fonctions intégrées : getattr, hasattr, setattr, delattr pour obtenir des membres, vérifier les membres, définir des membres, supprimer des membres
class Dog(object): def __init__(self,name): self.name = name def eat(self): print("%s is eating..."%self.name) def run(): print("runing ....") d = Dog("lucy") choise=input("请输入要调用的方法:") if hasattr(d,choise):#判断一个对象是否有对应的字符串方法 func=getattr(d,choise)#根据字符串去获取对象里相应的方法或属性的内存地址对象 func() else: setattr(d,choise,run)#setattr(obj,y,fun)相当于obj.y=fun,fun可以是属性或者方法 v=getattr(d,choise) print(v)
dir([obj]):
L'appel de cette méthode renverra une liste contenant la plupart des noms d'attributs d'obj (il y aura des attributs spéciaux qui ne sont pas compris). La valeur par défaut de obj est l'objet module actuel.
hasattr(obj, attr):
Cette méthode est utilisée pour vérifier si obj a un attribut avec une valeur nommée attr et renvoie une valeur booléenne.
getattr(obj, attr):
L'appel de cette méthode renverra la valeur de l'attribut nommé attr value dans obj, par exemple si attr est ' bar ', puis renvoie obj.bar.
setattr(obj, attr, val):
L'appel de cette méthode attribuera val à l'attribut nommé attr de obj. Par exemple, si attr vaut « bar », cela équivaut à obj.bar = val.
__doc__ Afficher les informations de description détaillées
__module__ représente le module où se trouve l'objet actuellement utilisé
__class__ représente la classe à laquelle appartient l'objet actuellement utilisé
__init__ le constructeur crée automatiquement des objets via des classes Exécutez la méthode destructeur
__del__, l'objet actuel est libéré dans la mémoire, tuez automatiquement le démon et exécutez
Ajoutez des parenthèses après l'objet __call__ pour déclencher l'exécution
__dict__ Visualisez les membres de la classe ou de l'objet
__str__ if Si cette méthode est définie dans une classe, alors lors de l'impression d'un tel objet, la valeur de retour de cette méthode est affichée
__getitem__ Lorsque le membre d'attribut d'un dictionnaire est défini dans la classe, vous pouvez obtenir le <.>__setitem__ paramètre pour modifier le dictionnaire dans la classe. Data
__delitem__ supprime les données du dictionnaire dans la classe
__metalass__ qui est utilisé pour indiquer qui instancie et crée la classe
__new__ déclenche __init__ pour créer un exemple
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!