Informatyka · Python · krok po kroku

For: przejdź po kolei przez liczby albo litery.

Chcesz wypisać numery dziesięciu miejsc albo każdą literę napisu. Nie musisz ręcznie zmieniać licznika. For bierze następny element i wykonuje dla niego ten sam blok.

  • Szkoła podstawowa
  • Kod z objaśnieniami
  • Trudniejsze zadania w biurku

Po tej lekcji: użyjesz for i range(), odróżnisz początek od końca zakresu i zbierzesz wynik.

Zakres podstawowy · materiał otwarty

For bierze następny element.

for przechodzi po elementach w podanej kolejności. W każdej iteracji — czyli jednym obrocie — przypisuje kolejny element do wybranej nazwy. Dziś będą to liczby z range albo litery z tekstu.

Przykłady zapisz w pliku petla_for.py i uruchamiaj jak poprzednie programy. Pamiętaj o dwukropku i czterech spacjach w bloku. Nie dopisuj ręcznego zwiększania zmiennej for, żeby sterować kolejnym elementem.

Trzy liczby, trzy obroty.

for-trzy.pypython
for numer in range(1, 4):
    print(numer)
print("Koniec")
Wynik
1
2
3
Koniec
  1. numer to nasza nazwa dla bieżącej liczby. Możesz wybrać inną czytelną nazwę.
  2. in czytamy „w” albo „z”. Tutaj pobieramy liczby z zakresu.
  3. range(1, 4) daje 1, 2, 3. Końcowe 4 nie wchodzi do zakresu.
  4. Wcięcia print numer jest w pętli, a print Koniec poza nią.

Range: start, stop i krok.

range(4) daje 0, 1, 2, 3 — start domyślnie wynosi 0. range(1, 4) daje 1, 2, 3. Stop nie należy do zakresu. Aby wypisać od 1 do n włącznie, użyj range(1, n + 1).

Trzeci argument to krok: range(2, 9, 2) daje 2, 4, 6, 8. Ujemny krok liczy w dół: range(3, 0, -1) daje 3, 2, 1. Krok nie może wynosić 0. Gdy kierunek nie pasuje, zakres jest pusty — np. range(1, 4, -1).

Sprawdź w działaniu

Ułóż tor liczb i zobacz granicę stop.

Wybierz start, stop i krok. Pola pokazują liczby, które faktycznie trafią do pętli. Przejdź do wybranego obrotu i odróżnij bieżącą wartość od numeru obrotu.

Ta interakcja wymaga włączonego JavaScriptu.

For potrafi też przejść przez tekst.

Nie potrzebujesz range, żeby przejść przez napis. for litera in "KOT" pobierze kolejno K, O i T. Nazwa litera w każdym obrocie wskazuje inny znak.

Pusta wartość tekstowa "" nie ma żadnej litery, więc pętla nie wykona bloku ani razu. Spacja też jest znakiem — w tekście „A B” pojawi się między A i B.

Jedna litera w każdym wierszu.

litery-for.pypython
for litera in "KOT":
    print(litera)
Wynik
K
O
T

Sprawdź w działaniu

Zobacz, którą literę trzyma teraz zmienna.

Wpisz krótki tekst. Wybierz znak na torze i zobacz stan po dojściu do niego. Pokaz dotyczy prostych liter i znaków; nie analizuje złożonych emoji.

Ta interakcja wymaga włączonego JavaScriptu.

Wynik nie musi być wypisywany w każdym obrocie.

Możesz odkładać kolejne wartości do sumy. Ustaw suma = 0 przed pętlą. Potem dodawaj bieżącą liczbę. Na końcu wypisz jeden gotowy wynik.

For i while potrafią rozwiązać podobne zadania. For jest wygodne, gdy przechodzisz po znanych elementach albo ustalonym zakresie. While przydaje się, gdy powtarzasz działanie do spełnienia warunku, np. uzbierania kwoty.

Dodajmy liczby od 1 do 4.

suma-for.pypython
suma = 0
for liczba in range(1, 5):
    suma = suma + liczba
print(suma)
Wynik
10

Ćwiczenie z pomocą · samodzielna praca

Tabliczka mnożenia jednej liczby.

Wczytaj jedną liczbę całkowitą n od 1 do 10. Wypisz w osobnych wierszach jej iloczyny przez 1, 2, 3, 4 i 5 — tylko wyniki. Użyj for.

Oczekiwany rezultat
Wejście:
3
Wyjście:
3
6
9
12
15
Potrzebujesz pomocy? Rozwiązuj krok po kroku.
Krok 1 — pokaż podpowiedź

Mnożniki powinny pochodzić z range(1, 6).

Krok 2 — pokaż podpowiedź

W każdym obrocie wypisz n * mnoznik.

Krok 3 — pokaż podpowiedź

Dla n = 1 dostaniesz liczby 1–5. Nie dodawaj osobnej zmiany mnożnika.

Otwórz tylko tyle podpowiedzi, ile potrzebujesz. Po każdym kroku wróć do zadania i sprawdź wynik.

Ćwiczenie z pomocą · samodzielna praca

Twój napis, osobne litery.

Wczytaj jeden niepusty wiersz złożony z 1–10 wielkich liter A–Z, bez spacji. Wypisz każdą literę w osobnym wierszu, zachowując kolejność.

Oczekiwany rezultat
Wejście:
DOM
Wyjście:
D
O
M
Potrzebujesz pomocy? Rozwiązuj krok po kroku.
Krok 1 — pokaż podpowiedź

Zapisz tekst zwrócony przez input() w zmiennej napis.

Krok 2 — pokaż podpowiedź

Użyj for litera in napis. Nie zamieniaj tekstu na liczbę.

Krok 3 — pokaż podpowiedź

Wcięty print(litera) wypisze jedną literę. Nie wypisuj całego napisu w każdym obrocie.

Otwórz tylko tyle podpowiedzi, ile potrzebujesz. Po każdym kroku wróć do zadania i sprawdź wynik.

Ćwiczenie z pomocą · samodzielna praca

Suma liczb parzystych do n.

Wczytaj jedną liczbę całkowitą n od 1 do 20. Użyj for i wypisz sumę dodatnich liczb parzystych nie większych od n. Gdy takich liczb nie ma, wypisz 0.

Oczekiwany rezultat
Wejście:
7
Wyjście:
12
Potrzebujesz pomocy? Rozwiązuj krok po kroku.
Krok 1 — pokaż podpowiedź

Ustaw sumę na 0 przed pętlą.

Krok 2 — pokaż podpowiedź

Liczby parzyste dostaniesz przez range(2, n + 1, 2).

Krok 3 — pokaż podpowiedź

Dla n = 1 zakres jest pusty, więc suma pozostanie równa 0. Dla 6 wynik to 2 + 4 + 6 = 12.

Otwórz tylko tyle podpowiedzi, ile potrzebujesz. Po każdym kroku wróć do zadania i sprawdź wynik.

Podsumowanie

Sprawdź, czy potrafisz to wyjaśnić.

  1. Wyjaśnij, dlaczego range(1, 4) nie daje 4.
  2. Odróżnij liczbę obrotów od wartości zmiennej w danym obrocie.
  3. Wskaż, które instrukcje są w pętli, a które po niej.
  4. Dobierz for do elementów lub zakresu, a while do warunku zakończenia.

Po zalogowaniu zobaczysz dodatkowe lekcje i materiały oznaczone jako rozszerzenie. Podstawowe quizy i zadania pozostają dostępne w biurku.

Dalej na swoim koncie

Rozgrzewki, quiz i zadania są w biurku ucznia.

Teoria jest otwarta dla wszystkich. Żeby rozwiązywać zadania, zapisywać szkice i widzieć swój postęp, zaloguj się.

Zaloguj się →
Źródła i dalsza nauka