Zanurkuj w Pythonie/Metody specjalne: Różnice pomiędzy wersjami
Usunięta treść Dodana treść
Nie podano opisu zmian |
Poprawienie literówki |
||
Linia 37:
# Tak jak <tt>__getitem__</tt>, metoda <tt>__setitem__</tt> po prostu pozwala metodzie <tt>self.data</tt> słownika wykonać jej pracę. I tak jak w przypadku <tt>__getitem__</tt> nie musisz wołać jej w ten sposób. Python wywoła <tt>__setitem__</tt> jeśli tylko użyjesz odpowiedniej składni.
# Ta linia wygląda jak użycie słownika. Tylko, że <tt>f</tt> jest obiektem klasy próbującej udawać słownik a metoda <tt>
<tt>__setitem__</tt> jest metodą specjalną, ponieważ Python wywołuje ją za Ciebie, ale ciągle jest metodą klasy. Tak łatwo, jak zdefiniowałeś ją w klasie <tt>UserDict</tt>, możesz ją przedefiniować w klasach pochodnych i zasłonić metodę klasy podstawowej. To pozwala Ci definiować klasy, które czasami zachowują się jak zwykły słownik ale potrafią coś więcej.
|