A legtöbb program nem úgy működik, hogy egyszerű utasítássorozatot hajt végre. Egy kódot írnak, amely lehetővé teszi a választások meghozatalát és a programon keresztüli számos útvonal követését a változó értékek eltolódásától függően.
Minden programozási nyelv tartalmaz egy előre beépített vezérlési struktúrát, amely lehetővé teszi ezeknek a vezérlési folyamatoknak a végrehajtását, ami elképzelhetővé teszi.
Ez az oktatóanyag megvizsgálja, hogyan adhatunk hurkokat és ágakat, azaz feltételeket Python programjainkhoz.
A vezérlőszerkezetek típusai
A vezérlési folyamat arra a sorrendre utal, amelyet a program követ a végrehajtása során.
A feltételek, a ciklusok és a hívó függvények jelentősen befolyásolják a Python-programok vezérlését.
A Pythonban háromféle vezérlőstruktúra létezik:
- Szekvenciális – A program alapértelmezett működése
- Kiválasztás – Ez a struktúra a feltételek ellenőrzésével és az elágazással kapcsolatos döntések meghozatalára szolgál
- Ismétlés - Ezt a struktúrát hurkolásra, azaz egy kódblokk egy bizonyos részének ismételt végrehajtására használják.
Egymás utáni
A szekvenciális utasítások olyan utasítások halmaza, amelyek végrehajtási folyamata sorozatban történik. A szekvenciális utasításokkal az a probléma, hogy ha a logika megszakad valamelyik sorban, akkor a teljes forráskód-végrehajtás megszakad.
Kód
java cast int karakterláncba
# 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)
Kimenet:
The result of the subtraction is: 10 The result of the addition is : 30 The result of the multiplication is: 200
Kiválasztási/döntési ellenőrzési nyilatkozatok
A szelekciós irányítási struktúrákban használt állításokat elágazó utasításoknak is nevezik, vagy mivel alapvető szerepük a döntéshozatal, döntési irányítási utasításoknak is nevezik.
Egy program sok feltételt tud tesztelni ezekkel a kiválasztási utasításokkal, és attól függően, hogy az adott feltétel igaz-e vagy sem, különböző kódblokkokat tud végrehajtani.
A döntés-ellenőrzési struktúráknak számos formája lehet. Íme néhány leggyakrabban használt vezérlőstruktúra:
- Csak ha
- ha más
- A beágyazott ha
- A teljes ha-elif-egyéb
Egyszerű, ha
Ha a Python utasításait control flow utasításoknak nevezzük. A kiválasztási utasítások segítenek egy bizonyos kódrészlet futtatásában, de csak bizonyos körülmények között. Egy alap if utasításban csak egy feltételt kell tesztelni.
Az if utasítás alapvető szerkezete a következő:
Szintaxis
if : The code block to be executed if the condition is True
Ezek a kijelentések mindig végrehajtásra kerülnek. A fő kód részét képezik.
Az if utasítás után behúzott összes utasítás lefut, ha az if kulcsszó után a feltétel megadója True. Csak az a kódutasítás, amely mindig végrehajtásra kerül, függetlenül attól, hogy a feltétel a fő kódhoz igazítva írt utasítás. A Python az ilyen típusú behúzásokat használja egy adott vezérlőfolyamat-utasítás kódblokkjának azonosítására. A megadott vezérlőstruktúra csak a behúzott utasítások folyamát módosítja.
Íme néhány példa:
Kód
# Python program to show how a simple if keyword works # Initializing some variables v = 5 t = 4 print('The initial value of v is', v, 'and that of t is ',t) # Creating a selection control structure if v > t : print(v, 'is bigger than ', t) v -= 2 print('The new value of v is', v, 'and the t is ',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('The value of v is ', v, 'and that of t is ', t) # Checking the condition if v > t : print('v is greater than t') # Giving the instructions to perform if the if condition is not true else : print('v is less than t') </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 = ', ') print(' ') for j in range(0,10): print(j, end = ', ') </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>
ha más
Ha az if-ben megadott feltétel hamis, akkor az if-else blokk a t=adott kódot hajtja végre az else blokkban.
Kód
karakterlánc és részkarakterlánc
# Python program to show how to use the if-else control structure # Initializing two variables v = 4 t = 5 print('The value of v is ', v, 'and that of t is ', t) # Checking the condition if v > t : print('v is greater than t') # Giving the instructions to perform if the if condition is not true else : print('v is less than t')
Kimenet:
The value of v is 4 and that of t is 5 v is less than t
Ismétlés
Egy bizonyos állításkészlet megismétléséhez az ismétlési struktúrát használjuk.
Általában két ciklusutasítás létezik az ismétlési struktúra megvalósítására:
- A for ciklus
- A while ciklus
For Loop
A for ciklust használjuk az iterálható Python-szekvencia iterálásához. Ilyen adatszerkezetek például a listák, karakterláncok, sorok, szótárak stb. A for ciklus kódblokk alá írjuk azokat a parancsokat, amelyeket ismételten végrehajtani szeretnénk minden sorozatelemhez.
Kód
# 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 = ', ') print(' ') for j in range(0,10): print(j, end = ', ')
Kimenet:
2, 4, 7, 1, 6, 4, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
Míg a Loop
Bár a ciklusokat egy bizonyos kódblokk ismételt végrehajtására is használják, a különbség az, hogy a ciklusok addig működnek, amíg egy adott előfeltétel teljesül. A kifejezés minden végrehajtás előtt ellenőrzésre kerül. Ha a feltétel logikai hamis értéket eredményez, a ciklus leállítja az iterációt.
Kód
# 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>