Saltar al contenido principal
🔒 Modo vista previa. Las primeras quince lecciones de Foundations son gratis; esta es Pro. Inicia un trial de 7 días para desbloquear el editor, las pistas AI y el resto del programa. Tarjeta requerida, cancela cuando quieras en Dashboard.Iniciar trial de 7 días →
← CursosSenior Deep-DivesModule 7 · Memory, GC, modern typing@dataclass(frozen=True) + dataclasses.replace — immutable updatespredict122 / 161
+150 XP
Tarea
📝 **Tarea:** Predecir el resultado exacto. El Punto congelado no se puede mutar directamente; `replace` devuelve una NUEVA instancia con las anulaciones nombradas; la igualdad es por valor, el hash es consistente con la igualdad. 📋 Implemente la función anterior. Las pruebas se ejecutan automáticamente. 💡 **Pista:** Vuelve a leer la teoría si te quedas atascado.
Predice la salida

Lee el código con atención

from dataclasses import dataclass, replace, FrozenInstanceError


@dataclass(frozen=True)
class Point:
    x: int
    y: int


p = Point(1, 2)
print(p)

try:
    p.x = 99
except FrozenInstanceError:
    print("frozen")

p2 = replace(p, y=20)
print(p2)
print(p is p2)
print(p == Point(1, 2))
print(hash(p) == hash(Point(1, 2)))

p3 = replace(p, x=100, y=200)
print(p3)

¿Qué imprimirá el programa? Escribe aquí:

💬 Discusión

Sé el primero en hacer una pregunta o compartir un consejo.
Inicia sesión para unirte a la discusión. Leer es gratis.
Cargando discusión…