Saltar al contenido

dataclass

Python · Unidad 14: Clases modernas

Muchas clases solo guardan datos, y su __init__ siempre hace lo mismo: recibir un valor y copiarlo a self.

@dataclass escribe ese __init__ por ti. Se importa de dataclasses, se pone arriba de la clase, y adentro se listan los campos con su tipo.

from dataclasses import dataclass

@dataclass
class Punto:
    x: int
    y: int

p = Punto(3, 4)
print(p.x, p.y)

Imprime

3 4

El resto de la explicación está en la lección, que es del plan completo.

Ejercicios de esta lección

Se hacen en la app, que los corrige al momento y explica por qué.

  1. 1. Completa el código

    Completa para que Python escriba el __init__ de Taza.

  2. 2. Predice la salida

    ¿Qué imprime este código?

  3. 3. Predice la salida

    ¿Qué imprime este código?

  4. 4. Completa el código

    Completa para que el boleto guarde su precio. Debe imprimir: 150 True

  5. 5. Encuentra el bug

    Este programa debería imprimir Rex 5. ¿Qué línea tiene el error?

  6. 6. Predice la salida

    ¿Qué imprime este código?

  7. 7. Completa el código

    Completa para que cada lista del súper empiece vacía.

  8. 8. Opción múltiple

    ¿Por qué jug: list = [] no se permite en un @dataclass?

  9. 9. Ordena las líneas

    Ordena para que imprima: Mate 10

  10. 10. Predice la salida

    Las frutas caras son las de más de 20. ¿Qué imprime?

Hacer esta lección

Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.

Ver todas las lecciones →