Przejdź do treści głównej
🔒 Tryb podglądu. Pierwszych piętnaście lekcji Foundations jest darmowych; ta jest Pro. Rozpocznij 7-dniowy trial, aby odblokować edytor, podpowiedzi AI i resztę kursu. Wymagana karta, anulujesz w dowolnym momencie w Dashboard.Rozpocznij 7-dniowy trial →
← KursySenior Deep-DivesModuł 4 · Pamięć, profilowanie, optymalizacjasloty klas danych i kw_onlypredict52 / 161
+100 XP
Zadanie
📝 **Pytanie:** Przewiduj dokładny wynik. Dwie flagi w akcji: \`Point\` używa \`slots=True\`, \`User\` używa \`kw_only=True\`. Dwie rzeczy do przewidzenia: (1) czy \`p.z = 99\` powiedzie się w punkcie szczelinowym? (2) czy \`User("Ann", 30)\` działa, czy też kw_only blokuje tylko argumenty pozycyjne? 📋 Wybierz właściwą odpowiedź. 💡 **Wskazówka:** Jeśli nie jesteś pewien, przeczytaj ponownie powyższą teorię.
Przewiduj wynik

Przeczytaj kod uważnie

from dataclasses import dataclass


@dataclass(slots=True)
class Point:
    x: float
    y: float


@dataclass(kw_only=True)
class User:
    name: str
    age: int = 0


p = Point(1.0, 2.0)
print(f"p:{p.x},{p.y}")

try:
    p.z = 99
    print("z_set")
except AttributeError:
    print("p:slots_block")

try:
    User("Ann", 30)
except TypeError:
    print("user:positional_blocked")

u = User(name="Ann", age=30)
print(f"u:{u.name},{u.age}")

Co wypisze program? Napisz tutaj:

💬 Dyskusja

Zadaj pierwsze pytanie lub podziel się wskazówką.
Zaloguj się aby dołączyć do dyskusji. Czytanie jest darmowe.
Ładowanie dyskusji…