Arguments optionnels pour un constructeur de classe en Python
Comme son nom l’indique, un argument optionnel est un argument pour lequel le passage d’une valeur n’est pas obligatoire. Pour un tel argument, une valeur par défaut est évaluée. Si une valeur est transmise pour un tel argument, la nouvelle valeur remplace la valeur par défaut.
Dans cet article, nous allons apprendre à définir des arguments optionnels pour les classes en Python.
Définir des arguments facultatifs pour un constructeur de classe en Python
Pour ajouter des arguments facultatifs aux classes en Python, nous devons attribuer des valeurs par défaut aux arguments dans la signature de la fonction constructeur de la classe. L’ajout de valeurs par défaut est une tâche simple. Nous devons assimiler les arguments à leurs valeurs par défaut comme x = 3
, name = "Untitled"
, etc. La valeur par défaut sera considérée si aucune valeur n’est passée pour ces arguments optionnels. Le code Python suivant décrit le concept décrit ci-dessus.
class Point:
def __init__(self, x, y, z=0):
self.x = x
self.y = y
self.z = z
def __str__(self):
return f"X: {self.x}, Y: {self.y}, Z:{self.z}"
print(Point(1, 2)) # Object 1
print(Point(54, 92, 0)) # Object 2
print(Point(99, 26, 100)) # Object 3
Production :
X: 1, Y: 2, Z:0
X: 54, Y: 92, Z:0
X: 99, Y: 26, Z:100
Le constructeur de la classe Point
accepte trois arguments : x
, y
et z
. Ici, z
est l’argument facultatif car il a une valeur par défaut définie pour lui. Cela rend les deux autres arguments, x
et y
, obligatoires. Pour Object 1
, aucune valeur n’a été passée pour l’argument z
, et à partir de la sortie, nous pouvons voir que la valeur par défaut a été prise en compte pour z
. Et, pour l’objet 3, 100
a été passé pour l’argument z
, et à partir de la sortie, nous pouvons voir que 100
a été considéré comme supérieur à la valeur par défaut 0
.