Argumentos opcionales para un constructor de clase en Python
Como sugiere el nombre, un argumento opcional es un argumento para el que no es obligatorio pasar un valor. Para tal argumento, se evalúa un valor predeterminado. Si se pasa algún valor para dicho argumento, el nuevo valor sobrescribe el valor predeterminado.
En este artículo, aprenderemos cómo configurar argumentos opcionales para clases en Python.
Establecer argumentos opcionales para un constructor de clase en Python
Para agregar argumentos opcionales a las clases en Python, debemos asignar algunos valores predeterminados a los argumentos en la firma de la función constructora de la clase. Agregar valores predeterminados es una tarea sencilla. Tenemos que equiparar los argumentos a sus valores predeterminados como x = 3
, nombre = "Untitled"
, etc. Se considerará el valor predeterminado si no se pasan valores para estos argumentos opcionales. Seguir el código de Python representa el concepto discutido anteriormente.
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
Producción :
X: 1, Y: 2, Z:0
X: 54, Y: 92, Z:0
X: 99, Y: 26, Z:100
El constructor de la clase Punto
acepta tres argumentos: x
, y
y z
. Aquí z
es el argumento opcional porque tiene un valor predeterminado establecido para él. Esto hace que los otros dos argumentos, x
e y
, sean obligatorios. Para el Objeto 1
, no se pasó ningún valor para el argumento z
, y a partir de la salida, podemos ver que se consideró el valor predeterminado para z
. Y, para el Objeto 3, se pasó 100
para el argumento z
, y a partir de la salida, podemos ver que 100
se consideró sobre el valor predeterminado 0
.