Komputery

Konstrukcje zapętlone w Pythonie

Autor: Peter Berry
Data Utworzenia: 19 Lipiec 2021
Data Aktualizacji: 10 Móc 2024
Anonim
for loop, while loop ,iterative and Looping Construct in Python.
Wideo: for loop, while loop ,iterative and Looping Construct in Python.

Zawartość

Jestem programistą i interesuję się analizą danych i statystykami.

Konstrukcje pętlowe w dowolnym języku programowania służą do powtarzania sekwencji kroków przez określoną liczbę razy. Python dopuszcza dwa typy pętli: pętlę for i pętlę while. Możliwe jest również dodanie pętli do innej pętli i utworzenie zagnieżdżonej pętli w Pythonie.

Pętla For

Podczas iteracji po krotka lub lista, możemy albo użyć indeksów i napisać tradycyjną pętlę for, która jest podobna do tej, którą można znaleźć w C / C ++ lub napisać pętlę for-each-sequence podobną do tej w Javie. Dowiedzmy się więcej o pętlach for.

Iterowanie po blokach konstrukcyjnych sekwencji

#! / usr / bin / python3 print ("Drukowanie liter łańcucha w każdym wierszu ...") for cur w 'Hello World!': print (bież) rhymes = ['Mary', 'Had', 'A' , 'Little', 'Lamb'] print ("Drukowanie słów w rymie w każdym wierszu ...") dla słowa w rymach: print (word) print ("... Reached the end ...")

W pierwszej pętli for pobieramy ciąg znaków „HelloWorld!” I wykonujemy iteracje po nim za pomocą iteracji zmienna. Ogólnie składnię tego typu pętli for można wyrazić jako:


for iter_var w kolejności: # wkracza do pętli.

Pierwsze dwie pętle for pokazują, w jaki sposób litery w ciągu i słowa na liście reprezentującej frazę są traktowane jako indywidualne elementy składowe sekwencji.

Wynik dla powyższego programu będzie wyglądał następująco:

Drukowanie liter w każdym wierszu ...

H.

mi

l

l

o

W

o

r

l

re

!

Drukowanie słów w rymie w każdym wierszu ...

Mary

Miał

ZA

Mało

Baranek ... dotarł do końca ...

Ten typ pętli for można zastosować również w przypadku krotki lub słownika. Poniższy kod pokazuje, jak iterować po słowniku, biorąc pod uwagę klucze lub pary klucz-wartość jako bloki konstrukcyjne sekwencji.

#! / usr / bin / python3 print ("Iteracja po słowniku") studentDict = {'firstName': 'john', 'lastName': 'Smith', 'age': 29, 'studentId': 415312} print ( "Iterowanie przy użyciu samego klucza w pętli for") dla klucza w studentDict: print ("key:", key, ", value:", studentDict [key]) print ("Iterating using key and value") for foo, bar in studentDict.items (): print ("key:", foo, ", value:", bar) print ("... Osiągnięto koniec ...")

W pierwszej pętli for iterujemy po słowniku używając samego klucza. W drugiej pętli for zarówno klucz, jak i wartość są używane jako zmienne iteracyjne do iteracji po elementach słownika o nazwie „studentDict”. Zauważ, że nie jest obowiązkowe podawanie nazwy jako „klucz” i „wartość” zawsze w pętli for i aby to zademonstrować, użyliśmy foo i bar.


Dane wyjściowe dla powyższego kodu będą wyglądać następująco:

Iterowanie po słowniku

Iterowanie przy użyciu samego klucza w pętli for

klucz: firstName, wartość: jan

klucz: studentId, wartość: 415312

klucz: lastName, wartość: Smith

klucz: wiek, wartość: 29

Iterowanie przy użyciu klucza i wartości

klucz: firstName, wartość: jan

klucz: studentId, wartość: 415312

klucz: lastName, wartość: Smith

klucz: wiek, wartość: 29

... dotarłem do końca ...

Iterowanie po sekwencji przy użyciu indeksu i zakresu

Jest to podobne do pętli for, które widzimy w językach takich jak C / C ++ / Java itp. Dostęp do elementów danej sekwencji uzyskuje się za pomocą indeksu.

Funkcja range () służy do zwracania zakresu wartości, począwszy od zera jako dolnej granicy, do wartości wymienionej jako parametr w górnej granicy. Możliwe jest uzyskanie podzakresu, podając dolną granicę i górną granicę.

Na przykład range (2,6) zwraca 2, 3, 4, 5, podczas gdy range (3) zwraca 0, 1, 2. W poniższym kodzie używamy range (len (rymy)), aby skierować Pythona do iteracji pozycje 0, 1, 2, aż do rymów [długość - 1] i wypisz wartości.


#! / usr / bin / python3 rhymes = ['Mary', 'Had', 'A', 'Little', 'Lamb'] print ("Drukowanie każdego słowa w nowej linii, do której ma dostęp indeks.") dla indeksu w zakresie (len (rymy)): drukuj (rymy [indeks])

Dane wyjściowe dla powyższego kodu będą wyglądać następująco:

Drukowanie każdego słowa w nowej linii, do której można uzyskać dostęp przez indeks.

Mary

Miał

ZA

Mało

owieczka

Pętla While

Ogólną składnię pętli while można przedstawić w następujący sposób:

while warunek: # wykonaj następujące kroki

Powtarza kroki, o ile warunek jest spełniony. Tak więc nieskończoną pętlę można łatwo napisać za pomocą tej pętli while, tak jak tworzymy ją w C / C ++ / Javie za pomocą:

test = 1, podczas gdy test == 1: # wykonaj te kroki nieskończoną liczbę razy

W poniższym programie drukujemy liczby od 11 do 20 za pomocą prostej pętli while.

#! / usr / bin / python3 print ("Licząc od 11 do 20") count = 11 while count = 20: print (count) count = count + 1

Wynik powyższego programu będzie następujący:

Licząc od 11 do 20

11

12

13

14

15

16

17

18

19

20

Pętle zagnieżdżone

Możliwe jest zagnieżdżenie pętli w innej pętli. Rozważmy następujący przykładowy program. Jest przeznaczony do drukowania piramidy liczb w następujący sposób:

1

1 2

1 2 3

1 2 3… n

#! / usr / bin / python3 # Program do drukowania piramidy liczb, na przykład: for i in range (1,6): for j in range (1, i + 1): print (j, end = "") print ( „”)

W pierwszej pętli for określamy dolną granicę zakresu jako 1, a górną jako 5 + 1. W drugiej pętli określamy zakres od 1 do i + 1 dla każdej linii. Zauważ, że instrukcja print ma parametr o nazwie end = ”“.

Ma to na celu skierowanie interpretera do drukowania dalszych wyjść w tej samej linii, a wszystkie te wyjścia powinny być oddzielone za pomocą pokazanego znaku specjalnego. Jeśli instrukcja zostanie zmieniona na print (j, end =’, ’), wszystkie liczby będą miały na końcu przecinek. Wynik dla powyższego programu będzie:

1

1 2

1 2 3

1 2 3 4

1 2 3 4 5

Instrukcje sterowania pętlą

Python oferuje trzy instrukcje sterujące:

  • Instrukcja Break: Kończy instrukcję pętli i przenosi kontrolę poza zakres do następnej instrukcji następującej po pętli.
  • Kontynuuj oświadczenie: Powoduje, że pętla pomija pozostałe kroki pętli, ale kontynuuje ją w następnej iteracji.
  • Oświadczenie Pass: Często przydaje się do debugowania kodu. Tak naprawdę nic się nie dzieje, gdy instrukcja jest wykonywana.

Dowiedzmy się więcej o tych stwierdzeniach na przykładzie:

#! / usr / bin / python3 print ('Drukowanie listów w literze powitalnej do l') dla litery w 'Witamy': if letter == 'l': break print (letter, end = ",") print ("" ) print ('Drukowanie liter na powitanie po pominięciu l') dla litery w 'Welcome': if letter == 'l': continue print (letter, end = ",") print ("") print ("Dodawanie bloku przejścia kiedy l jest napotkane ") dla litery w 'Witamy': if letter == 'l': pass print (" ") print (" Napotkany blok przebiegu ") print (" Kontynuuj drukowanie ") print (letter, end =", ")

Wynik powyższego kodu będzie następujący:

Drukowanie listów w powitalnym do litery l

W, e,

Drukowanie listów powitalnych po pominięciu l

W, e, c, o, m, e,

Dodanie bloku przebiegu, gdy napotkany zostanie l

W, e,

Napotkana blokada przepustki

Kontynuuj drukowanie

l, c, o, m, e,

Udział

Polecany Przez Nas.

Clojure: makra do pisania makr
Komputery

Clojure: makra do pisania makr

Jeśli pi ze z funkcję i taje ię ona wy tarczająco duża, aby być niezgrabną, je tem pewien, że wie z, jak podzielić ją na wiele mniej zych funkcji, z których każda je t zrozumiała. Oczywiście je t...
Ponad 100 zalotnych cytatów i pomysłów na napisy na Instagramie
Internet

Ponad 100 zalotnych cytatów i pomysłów na napisy na Instagramie

Cheeky Kid to cybernauta, który pędza dużo cza u na przeglądaniu ieci, chwytaniu nie kończonych informacji oraz bawiąc ię rozrywką i zabawą.Flirtowanie zaw ze było zajęciem. Nawet w erze cyfrowej...