Fonction Python SetAttr

Fonction Python SetAttr
Nous sommes tous conscients qu'un constructeur de fonction d'objet et de fonction peut être utilisé pour se référer spécifiquement à une variable de classe. La méthode setAttr () est la seule autre alternative à celle. Dans la programmation dynamique, où le nom de la variable n'est pas statique, la méthode setAttr () est utile. L'opérateur DOT est inapplicable dans cette situation. En utilisant l'entrée utilisateur comme illustration, il définit la valeur d'un attribut d'objet. Une valeur est attribuée à l'attribut d'un objet à l'aide de la fonction setAtTr () dans Python. Il accepte un objet, une chaîne et une valeur non spécifiée comme paramètres mais ne fournit aucune sortie. Lorsque nous souhaitons donner un nouvel attribut à un objet et lui attribuer une valeur, il est utile.

Vous acquerrez des connaissances sur la méthode setAttr () de Python dans cet article, tandis que nous couvrons ce qu'il accomplit, quand l'utiliser et quand il n'est pas nécessaire. Que l'attribut soit présent ou non, la méthode est utilisée pour définir la valeur d'un attribut pour un objet.

Syntaxe de la fonction setAttr () dans Python

Ce qui suit est la syntaxe setAtTr () que nous avons déployée dans un script python:

setAttr (set_object, set_variable, set_value)


L'object.Le paramètre d'attribut est défini sur une valeur égale à l'aide du nom des arguments de l'objet, du nom de la variable et de la valeur. Cette fonction ne lance aucune exception car aucune propriété d'objet peut être d'un certain type. Il ne renvoie rien à la fonction d'appel.

Exemple 1: Programme d'utilisation de la fonction setAttr ()

La méthode setAttr () montre comment la programmation orientée objet fonctionne toujours bien dans ces situations et est très utile si les attributs d'un objet peuvent changer pendant son utilisation. Voici le programme pour démontrer le fonctionnement de la fonction setAttr ():

Employé de classe:
Emp_name = 'Alice'
my_object = employee ()
print ("Avant le nom de l'employé SetAttr:", my_object.EMP_NAME)
setAttr (my_object, 'emp_name', 'Alice Jeo')
Print ("After SetAttr Employee Name:", My_Object.EMP_NAME)

Dans le script, nous avons d'abord établi une classe qui est représentée avec le nom «Employé». Dans la classe spécifiée, nous avons créé une variable de classe comme «EMP_NAME». La variable de classe «EMP_NAME» est définie avec la valeur de chaîne qui est le nom de l'employé. Ensuite, nous avons défini un objet comme «My_Object» et invoqué la classe «Employé». L'impression est utilisée ici pour imprimer la valeur de la variable «EMP_NAME» avant le déploiement de la fonction setAttr ().

À la fonction SetAtTr, nous avons passé trois entrées: My_OBEJECT, le nom de la variable «EMP_NAME», et la valeur modifiée de la variable «EMP_NAME». Ensuite, dans la dernière déclaration d'impression, nous avons imprimé le nom de l'employé après avoir utilisé la fonction SetAttr ().

Ce qui suit est le résultat obtenu à partir du script précédent de la fonction Python SetAttr ():

Exemple 2: Programme d'utilisation de la propriété de fonction setAttr ()

Ici, nous avons montré la propriété de la fonction SetAttr () dans Python.

Animal de classe:
animal_name = 'cat'
obj1 = animal ()
Print ("Avant le nom de setAttr:", Str (Obj1.Animal_name))
setAttr (obj1, 'animal_name', aucun)
setAttr (obj1, «détail», «chatons persans»)
Print ("After Setattr Nom de l'animal:" + Str (Obj1.Animal_name))
Print ("After Setattr Animal Detail:", Str (Obj1.détail))

Dans le script précédent, nous avons défini la classe à laquelle nous avons attribué le nom «Animal». À la classe «Animal». Nous avons défini une variable comme «Animal_name» qui est définie avec la valeur de la chaîne du nom de l'animal «chat». Ensuite, nous avons un objet comme «obj1» où la classe «animal» est invoquée. Ensuite, nous avons imprimé l'objet en le faisant passer dans la méthode STR avant la fonction SetAtTr ().

Après cela, la fonction setAttr () est déployée lorsque le «Obj1» est passé. La variable «Animal_name» est également transmise avec la valeur «Aucun». Ici, nous avons déployé une autre fonction SetAttr () sur le nouvel attribut et l'avons initialisée avec la nouvelle valeur. L'instruction d'impression est fournie pour imprimer l'objet après la fonction setAttr ().

Les résultats de la fonction setAttr () avant et après son utilisation sont affichés dans les éléments suivants:

Exemple 3: Programme d'utilisation de la fonction setAttr () avec dict

Avoir la capacité de définir de nombreux attributs simultanément est un avantage de l'utilisation de la fonction SetAttr (). Si on vous donnait un dictionnaire des caractéristiques d'un objet, que contiendrait-il? Pour les définir pour les différents attributs d'un objet, vous pouvez les boucler sur eux.

classe MyDictClass (objet):
def __init __ (self, dict1):
pour Key dans Dict1:
setAttr (self, key, dict1 [key])
Si __name__ == "__main__":
dict1 = "Student_name": "Edison",
"Student_id": "3278",
"Student_degree": "It"
my_result = mydictClass (dict1)
Imprimer ("après la conversion du dictionnaire en classe:")
imprimer (my_result.Student_name, my_result.Student_id, my_result.Student_degree)
imprimer (type (my_result))

Dans ce script particulier, nous avons d'abord défini la classe «MyDictClass». Nous avons appelé l'objet à la classe. Ensuite, nous avons une définition de la méthode init qui prend le «soi» et le «dict1» comme arguments.

Après cela, nous avons la boucle pour les boucles sur chaque clé et la valeur du dictionnaire donné. Nous avons ensuite déployé la fonction setAttr () où les valeurs de soi, de clé et de dict sont ajoutées. Ensuite, dans la fonction principale de ce script, nous avons créé le dictionnaire. Après cela, nous avons transmis ce dictionnaire à la classe «MyDictClass» avec l'aide de l'objet nouvellement créé - «my_result». En fin de compte, nous avons imprimé le résultat.

Exemple 4: Programme d'utilisation de la fonction setAttr () avec exception

Ici, nous allons construire les attributs en lecture seule pour l'objet. Si nous essayons d'utiliser la fonction setAttr () pour modifier la valeur de l'attribut, une exception est soulevée.

Produit de classe:
def __init __ (soi):
soi._Function = aucun
fonction def (soi):
print ('fonction appelée')
se retourner._Fonction
obj = propriété (fonction, aucun)
p1 = produit ()
setAttr (p1, 'obj', 'ordinateur portable')

Tout d'abord, nous avons la définition de classe comme «produit». Nous avons défini la méthode init où le soi comme un argument est fourni à la classe. La variable est créée comme une «fonction» qui a une valeur définie sur aucun. Ensuite, nous avons défini la fonction de la variable précédente, «fonction».

Après cela, nous avons créé un objet comme «OBJ» où nous avons le nom de la propriété «fonction». À la fonction de propriété, nous avons passé la variable «fonction» et sa valeur. La fonction setAttr () est invoquée à laquelle nous avons fourni le P1, l'OBJ et la nouvelle valeur qui lance l'exception.

Vous pouvez voir que l'exception suivante est élevée à partir du script précédent:

Conclusion

Cet article nous a appris à utiliser la fonction SetAtTr () pour définir dynamiquement les attributs d'objet pendant qu'une application est en cours d'exécution. Lorsque les propriétés sont inconnues du développeur et qu'une API doit être flexible, c'est un moyen très utile pour la programmation orientée objet. Vous avez appris à attribuer une valeur à l'attribut d'un objet en utilisant la fonction Python SetAttr (). Votre connaissance de la définition de la fonction avec la fonction setAttr () est également effacée. Ensuite, vous avez appris à utiliser la méthode setAttr () tout en l'utilisant pour définir les attributs avec un dictionnaire Python.