Zmienne i przypisanie

Preview Mode

You're viewing this material in preview mode. Sign up to track your progress and access all features.

Zmienne i przypisanie
Required In Progress

Python • kurs podstawowy • lekcja 03

Zmienne i przypisanie

W grze wynik zmienia się po rundzie.

Twój cel: Prześledzisz przypisania i zaktualizujesz wynik na podstawie poprzedniej wartości.

Uruchamianie pliku i print().

Od potrzeby do kodu

Zmienna to nazwa powiązana z wartością; przypisanie ustala, do czego nazwa odnosi się teraz. Znak = nie sprawdza równości i nie zapisuje wzoru działającego bez końca.

W points = points + 5 najpierw odczytujemy dotychczasowe points i obliczamy prawą stronę. Dopiero potem nazwa points otrzymuje wynik. W copy = points odczytujemy bieżącą wartość: późniejsza zmiana points nie przelicza automatycznie copy.

Nadawaj nazwy opisujące dane, np. player_name. Nazwa nie zaczyna się od cyfry; wielkość liter ma znaczenie, więc score i Score to dwie nazwy. Nie używaj print jako nazwy własnej zmiennej, bo przesłonisz funkcję.

Przewidź przed uruchomieniem

points = 10
copy = points
points = points + 5
print(points)
print(copy)
Porównaj wynik i prześledź mechanizm
Przypisanie odczytuje prawą stronę teraz. Kolejność aktualizacji ma znaczenie.
Przypisanie odczytuje prawą stronę teraz. Kolejność aktualizacji ma znaczenie.

15 i 10. copy zostało powiązane z wartością 10 w chwili przypisania. Obliczenie points + 5 daje 15 i zmienia powiązanie points; nie aktualizuje copy.

Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:

15
10
Po instrukcji points copy
points = 10 10 nie istnieje
copy = points 10 10
points = points + 5 15 10
Model do prześledzenia: porównaj każdy etap z kodem. Etykiety opisują znaczenie danych, nie tylko ich wygląd.

Zmień działający program

Dodaj premię równą bieżącemu wynikowi, tak aby podwoić points po pierwszej aktualizacji. copy ma pozostać 10.

Pierwsza wskazówka

Zachowaj działający punkt wyjścia. Zlokalizuj konstrukcję wskazaną w poleceniu i zmień tylko ten etap. Przed uruchomieniem zapisz oczekiwany efekt.

Porównaj swoją modyfikację
points = 10
copy = points
points = points + 5
points = points + points
print(points)
print(copy)

Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:

30
10

Znajdź przyczynę problemu

Celowo błędny przykład diagnostyczny. Najpierw postaw hipotezę. Nie kopiuj tej wersji jako poprawnego rozwiązania.

Zamierzone działanie: Wyświetl liczbę punktów: 15.

points = 15
print("points")
Trop do diagnozy

Porównaj zamierzony rezultat z typami, nazwami i kolejnością instrukcji. Wskaż pierwsze miejsce, w którym zachowanie odbiega od celu.

Zastosuj w nowej sytuacji

Wskazówka do rozpoczęcia

Przypisanie odczytuje prawą stronę teraz. Kolejność aktualizacji ma znaczenie.

Zacznij od przygotowania danych. Pierwsza instrukcja przykładowego rozwiązania:

tokens = 12
Rozwiązanie do samodzielnej kontroli
tokens = 12
tokens = tokens - 4
tokens = tokens + 3
print(tokens)

Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:

11

Porównaj dane wejściowe, wynik i powód użycia konstrukcji. Inna wersja kodu jest poprawna, jeśli realizuje te same wymagania.

Co zabierasz do kolejnego programu?

Przypisanie odczytuje prawą stronę teraz. Kolejność aktualizacji ma znaczenie.

Bez zaglądania do przykładu wyjaśnij własnymi słowami, jak główna konstrukcja prowadzi od danych do wyniku. Potem sprawdź wyjaśnienie, uruchamiając swój program.