PYI_RY_W13_M05 Instrukcje iteracyjne i ich zapisywanie w języku programowania
Składnia pętli for wygląda następująco:
Zmienna wewnętrzna to nazwa zmiennej, która będzie przechowywała aktualnie analizowany element ze zbioru, który przechodzimy (iterujemy). Jeśli zbiorem jest lista uczniów, to do zmiennej wewnętrznej przy każdej iteracji będzie przypisywany kolejny uczeń.
Zbiorem może być tablica, ciąg znaków lub zakres stworzony za pomocą funkcji range().
Funkcja range() tworzy sekwencję liczb w podanym zakresie. Domyślnie pierwszą liczbą jest 0, a kolejne są domyślnie zwiększane o 1.
range(start, stop, krok)
Na przykład, range(6) zwróci zbiór liczb 0, 1, 2, 3, 4, 5. Funkcja range(2, 6) zwróci liczby 2, 3, 4, 5, a range(2, 9, 2) zwróci 2, 4, 6, 8.
Przeanalizujmy instrukcję pętli for za pomocą której wypiszemy kolejne liczby naturalne z przedziału od 0 do 10
Pętlę rozpoczynamy słowem kluczowym for. Następnie podajemy nazwę zmiennej iterującej. Jest to zmienna, której wartość będzie się zmieniała w kolejnych obrotach pętli. W tym przykładzie została nazwana i (ale nazwa może być dowolna, byle była zgodna z zasadami nazywania zmiennych). Po zmiennej iterującej występuje słowo kluczowe in, a po nim funkcja range, której argumentem jest liczba kroków do wykonania. Na końcu zapisujemy dwukropek. a w nowej linii jedną lub kilka instrukcje, które zostaną wykonane. W tym przypadku, jest to instrukcja print(i). Wynikiem działania programu będą liczby od 0 do 10, wypisane każda w osobnej linii.
Podsumowanie:
W każdym obrocie pętli zostaną wykonane instrukcje zapisane w bloku po dwukropku (blok rozpoczyna się w kolejnym wierszu. Instrukcje w bloku są zapisane z wcięciem.
Pętla operująca na zbiorze danych (na przykład na liście imion) przedstawia się tak:
Tak zapisana pętla wykona instrukcje wewnątrz niej trzy razy, ponieważ tyle jest elementów w tablicy. Każde takie przejście nazywane jest iteracją. Zatem można powiedzieć, że w pierwszej iteracji wypiszemy imię Maciek, w kolejnej Magda a w ostatniej Asia.
Przykłady wykorzystania pętli for
Wyliczanka
Zwróćmy uwagę na funkcję range(), która jest bardzo często wykorzystywana w pętlach. W powyższym kodzie została wykorzystana skrócona składnia funkcji z jednym argumentem, jakim jest liczba elementów w zbiorze. Zmodyfikujmy powyższy kod, aby przed tekstem: Witaj, swiecie!, drukował po kolei numery z zakresu range():
Wynikiem będzie dziesięciokrotne wypisanie (numer). Witaj swiecie!, ale numerowane od 0 do 9. W programowaniu przyjęło się, że wyliczanie elementów rozpoczyna się od 0, a nie – jak przywykliśmy – od 1.
Jeśli jednak chcemy numerować od 1 do 10, należy zmienić parametry funkcji range(), aby rozpoczynała zakres od 1 i kończyła na 11.
Do drukowania wyniku wykorzystaliśmy funkcję str(), która zamienia typ integer na typ string. Gdybyśmy chcieli bezpośrednio połączyć liczbę całkowitą z ciągiem znaków, interpreter zwróciłby błąd.
Suma liczb
Napiszmy program liczący sumę liczb z podanego zakresu. W tym celu zdefiniujemy zakres od 1 do 10, a także zmienną suma.
W trakcie każdej iteracji kolejna liczba jest dodawana do sumy. Po zakończeniu pętli, drukujemy wynik.
Słownik
struktura danych, w której można przechowywać dane; w języku Python tablice są często nazywane listami.
wydzielona część programu, która przetwarza dane i ewentualnie zwraca na ich podstawie pewną wartość; przykładową funkcją w języku Python jest print().