Python getattr()
Dans notre tutoriel précédent, nous avons appris sur la commande système en python. Dans ce tutoriel, nous allons discuter de la fonction getattr() de Python.
La fonction getattr() de Python
La fonction getattr() en Python est utilisée pour obtenir la valeur d'un attribut d'objet et si aucun attribut de cet objet n'est trouvé, une valeur par défaut est renvoyée. En gros, renvoyer la valeur par défaut est la principale raison pour laquelle vous pourriez avoir besoin d'utiliser la fonction getattr() en Python. Donc, avant de commencer le tutoriel, voyons la syntaxe de base de la fonction getattr() de Python.
getattr(object_name, attribute_name[, default_value])
Exemple de getattr() en Python
Dans cette section, nous allons apprendre à accéder aux valeurs des attributs d'un objet en utilisant la fonction getattr(). Supposons que nous écrivons une classe nommée Étudiant. Les attributs de base de la classe Étudiant sont student_id et student_name. Maintenant, nous allons créer un objet de la classe Étudiant et accéder à ses attributs.
class Student:
student_id=""
student_name=""
# initial constructor to set the values
def __init__(self):
self.student_id = "101"
self.student_name = "Adam Lam"
student = Student()
get attribute values by using getattr() function
print('\ngetattr : name of the student is =', getattr(student, "student_name"))
but you could access this like this
print('traditional: name of the student is =', student.student_name)
Donc, la sortie sera comme ceci
valeur par défaut de getattr() en Python
Dans cette section, nous allons utiliser l'option de valeur par défaut de la fonction getattr() en Python. Si vous souhaitez accéder à un attribut qui n'appartient pas à l'objet, vous pouvez alors utiliser l'option de valeur par défaut de getattr(). Par exemple, si l'attribut student_cgpa n'est pas présent pour l'étudiant, alors une valeur par défaut sera affichée. Dans l'exemple suivant, nous verrons un exemple de valeur par défaut. Nous apprendrons également ce qui se passe si l'attribut est absent et que nous n'utilisons pas l'option de valeur par défaut.
class Student:
student_id=""
student_name=""
# initial constructor to set the values
def __init__(self):
self.student_id = "101"
self.student_name = "Adam Lam"
student = Student()
using default value option
print('Using default value : Cgpa of the student is =', getattr(student, "student_cgpa", 3.00))
without using default value
try:
print('Without default value : Cgpa of the student is =', getattr(student, "student_cgpa"))
except AttributeError:
print("Attribute is not found :(")
Donc, après avoir exécuté le code, vous obtiendrez une sortie comme celle-ci.
Using default value : Cgpa of the student is = 3.0
Attribute is not found :(
Notez que AttributeError est levé lorsque la valeur par défaut n'est pas fournie lors de l'appel de la fonction getattr().
Raison d'utiliser la fonction getattr() de Python
La principale raison d'utiliser la fonction getattr() en Python est que nous pouvons obtenir la valeur en utilisant le nom de l'attribut sous forme de chaîne. Ainsi, vous pouvez saisir manuellement le nom de l'attribut dans votre programme depuis la console. De nouveau, si un attribut n'est pas trouvé, vous pouvez définir une valeur par défaut, ce qui nous permet de compléter certaines de nos données incomplètes. De plus, si votre classe Student est en cours de développement, nous pouvons utiliser la fonction getattr() pour compléter d'autres parties du code. Une fois que la classe Student a cet attribut, elle le récupérera automatiquement et n'utilisera pas la valeur par défaut. Voilà tout sur la fonction getattr() de Python. Si vous avez des questions à ce sujet, veuillez utiliser la boîte de commentaires ci-dessous. Référence : Documentation officielle.

