Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Python dobrze rozumiem zabezpieczenie przed radd?

szymon1051 01 Lip 2020 05:44 135 0
  • #1
    szymon1051
    Poziom 13  
    Kod: python
    Zaloguj się, aby zobaczyć kod


    Mam coś takiego. Printy sam dodałem dla zrozumienia reszta z książki.
    Mam na przykład.
    Kod: python
    Zaloguj się, aby zobaczyć kod


    Bo jest w print to wyświetli wartosć to 2 z c.val

    Dla "c" wykona się add i sprawdzi że to co dodaje należy o klasy Dodawanie2 i przypisze do other wartość z other.val czyli instacji o nazwie "d".
    Na koniec ma zwrócić / wykonać Dodawanie2(self.val + other) tu po prostu doda do siebie dwie wartości int, u nas 1 + 2 i wywoła klasę Dodawanie2(3) i tam stworzy jakąś instancje.

    Tylko dlaczego przy "d" nie zadziała radd?

    Z tych printów co dodałem wynika że dla "d" się nic nie wykonuje. Tylko dlaczego?

    I skąd bierze potem "wartosc to 3"?
    To się chyba wierze z tego, że jest return i u mnie na początku da Dodwanie2(3) i co stworzy jakąś instancje w pamięci i ona jest też z automatu w print i wykonuje to co w __str__


    Kod: python
    Zaloguj się, aby zobaczyć kod


    Tu jest prawie to samo tylko bez isinstance i nagle dla "d" się wykonuje radd.