logo

Kontrolne strukture u Pythonu

Većina programa ne radi izvođenjem jednostavnog niza iskaza. Kod je napisan kako bi se omogućilo donošenje izbora i nekoliko putova kroz program koje treba slijediti ovisno o promjenama u vrijednostima varijabli.

Svi programski jezici sadrže unaprijed uključen skup kontrolnih struktura koje omogućuju izvršavanje ovih kontrolnih tokova, što ga čini zamislivim.

Ovaj vodič će ispitati kako dodati petlje i grane, tj. uvjete u naše Python programe.

Vrste kontrolnih struktura

Kontrolni tijek odnosi se na redoslijed koji će program slijediti tijekom svog izvođenja.

Uvjeti, petlje i pozivanje funkcija značajno utječu na to kako se Python program kontrolira.

U Pythonu postoje tri vrste kontrolnih struktura:

  • Sekvencijalno - Zadani rad programa
  • Odabir - Ova struktura se koristi za donošenje odluka provjerom uvjeta i grananjem
  • Ponavljanje - Ova se struktura koristi za ponavljanje, tj. opetovano izvršavanje određenog dijela bloka koda.

Sekvencijalno

Sekvencijalne naredbe su skup naredbi čiji se proces izvršavanja odvija u nizu. Problem sa sekvencijalnim izjavama je da ako se logika pokvari u bilo kojem redu, tada će se prekinuti kompletno izvršavanje izvornog koda.

Kodirati

metoda podniza u Javi
 # Python program to show how a sequential control structure works # We will initialize some variables # Then operations will be done # And, at last, results will be printed # Execution flow will be the same as the code is written, and there is no hidden flow a = 20 b = 10 c = a - b d = a + b e = a * b print('The result of the subtraction is: ', c) print('The result of the addition is: ', d) print('The result of the multiplication is: ', e) 

Izlaz:

 The result of the subtraction is: 10 The result of the addition is : 30 The result of the multiplication is: 200 

Izjave o kontroli odabira/odluke

Izjave koje se koriste u strukturama kontrole odabira također se nazivaju izjavama o grananju ili, budući da je njihova temeljna uloga donošenje odluka, izjavama za kontrolu odlučivanja.

Program može testirati mnoge uvjete pomoću ovih naredbi za odabir, a ovisno o tome je li dani uvjet istinit ili ne, može izvršiti različite blokove koda.

Može postojati mnogo oblika struktura kontrole odlučivanja. Evo nekih najčešće korištenih kontrolnih struktura:

  • Samo ako
  • ako-drugače
  • Ugniježđeni if
  • Potpuni if-elif-else

Jednostavno ako

Izjave If u Pythonu nazivaju se izjavama tijeka upravljanja. Naredbe odabira pomažu nam u pokretanju određenog dijela koda, ali samo u određenim okolnostima. Postoji samo jedan uvjet za testiranje u osnovnoj if naredbi.

Osnovna struktura if naredbe je sljedeća:

Sintaksa

 if : The code block to be executed if the condition is True 

Ove izjave će se uvijek izvršavati. Oni su dio glavnog koda.

Sve naredbe napisane uvučene nakon naredbe if pokrenut će se ako je davatelj uvjeta iza ključne riječi if True. Samo naredba koda koja će se uvijek izvršavati bez obzira na to je li uvjet naredba napisana usklađena s glavnim kodom. Python koristi ove vrste uvlaka za identifikaciju bloka koda određene izjave tijeka kontrole. Navedena kontrolna struktura izmijenit će tijek samo onih uvučenih iskaza.

Evo nekoliko primjera:

string split bash

Kodirati

 # Python program to show how a simple if keyword works # Initializing some variables v = 5 t = 4 print(&apos;The initial value of v is&apos;, v, &apos;and that of t is &apos;,t) # Creating a selection control structure if v &gt; t : print(v, &apos;is bigger than &apos;, t) v -= 2 print(&apos;The new value of v is&apos;, v, &apos;and the t is &apos;,t) # Creating the second control structure if v <t : print(v , 'is smaller than ', t) v +="1" print('the new value of is v) # creating the third control structure if t: v, ' and t,', t, are equal') < pre> <p> <strong>Output:</strong> </p> <pre> The initial value of v is 5 and that of t is 4 5 is bigger than 4 The new value of v is 3 and the t is 4 3 is smaller than 4 the new value of v is 4 The value of v, 4 and t, 4, are equal </pre> <h3>if-else</h3> <p>If the condition given in if is False, the if-else block will perform the code t=given in the else block.</p> <p> <strong>Code</strong> </p> <pre> # Python program to show how to use the if-else control structure # Initializing two variables v = 4 t = 5 print(&apos;The value of v is &apos;, v, &apos;and that of t is &apos;, t) # Checking the condition if v &gt; t : print(&apos;v is greater than t&apos;) # Giving the instructions to perform if the if condition is not true else : print(&apos;v is less than t&apos;) </pre> <p> <strong>Output:</strong> </p> <pre> The value of v is 4 and that of t is 5 v is less than t </pre> <h2>Repetition</h2> <p>To repeat a certain set of statements, we use the repetition structure.</p> <p>There are generally two loop statements to implement the repetition structure:</p> <ul> <li>The for loop</li> <li>The while loop</li> </ul> <h3>For Loop</h3> <p>We use a for loop to iterate over an iterable Python sequence. Examples of these data structures are lists, strings, tuples, dictionaries, etc. Under the for loop code block, we write the commands we want to execute repeatedly for each sequence item.</p> <p> <strong>Code</strong> </p> <pre> # Python program to show how to execute a for loop # Creating a sequence. In this case, a list l = [2, 4, 7, 1, 6, 4] # Executing the for loops for i in range(len(l)): print(l[i], end = &apos;, &apos;) print(&apos;
&apos;) for j in range(0,10): print(j, end = &apos;, &apos;) </pre> <p> <strong>Output:</strong> </p> <pre> 2, 4, 7, 1, 6, 4, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, </pre> <h3>While Loop</h3> <p>While loops are also used to execute a certain code block repeatedly, the difference is that loops continue to work until a given precondition is satisfied. The expression is checked before each execution. Once the condition results in Boolean False, the loop stops the iteration.</p> <p> <strong>Code</strong> </p> <pre> # Python program to show how to execute a while loop b = 9 a = 2 # Starting the while loop # The condition a <b 1 will be checked before each iteration while a < b: print(a, end=" " ) + print('while loop is completed') pre> <p> <strong>Output:</strong> </p> <pre> 2 3 4 5 6 7 8 While loop is completed </pre> <hr></b></pre></t>

ako-drugače

Ako je uvjet dan u if False, if-else blok će izvesti kod t=dan u else bloku.

Kodirati

 # Python program to show how to use the if-else control structure # Initializing two variables v = 4 t = 5 print(&apos;The value of v is &apos;, v, &apos;and that of t is &apos;, t) # Checking the condition if v &gt; t : print(&apos;v is greater than t&apos;) # Giving the instructions to perform if the if condition is not true else : print(&apos;v is less than t&apos;) 

Izlaz:

 The value of v is 4 and that of t is 5 v is less than t 

Ponavljanje

Za ponavljanje određenog skupa izjava koristimo strukturu ponavljanja.

Općenito postoje dvije izjave petlje za implementaciju strukture ponavljanja:

  • For petlja
  • while petlja

Za petlju

Koristimo for petlju za ponavljanje Python niza koji se može ponavljati. Primjeri ovih struktura podataka su popisi, nizovi, torke, rječnici itd. Pod blokom koda petlje for pišemo naredbe koje želimo ponavljati za svaku stavku niza.

Kodirati

 # Python program to show how to execute a for loop # Creating a sequence. In this case, a list l = [2, 4, 7, 1, 6, 4] # Executing the for loops for i in range(len(l)): print(l[i], end = &apos;, &apos;) print(&apos;
&apos;) for j in range(0,10): print(j, end = &apos;, &apos;) 

Izlaz:

 2, 4, 7, 1, 6, 4, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 

Dok petlja

Iako se petlje također koriste za višekratno izvršavanje određenog bloka koda, razlika je u tome što petlje nastavljaju raditi sve dok se ne zadovolji određeni preduvjet. Izraz se provjerava prije svakog izvođenja. Nakon što uvjet rezultira Booleovom False, petlja zaustavlja ponavljanje.

Kodirati

 # Python program to show how to execute a while loop b = 9 a = 2 # Starting the while loop # The condition a <b 1 will be checked before each iteration while a < b: print(a, end=" " ) + print(\'while loop is completed\') pre> <p> <strong>Output:</strong> </p> <pre> 2 3 4 5 6 7 8 While loop is completed </pre> <hr></b>