⊗pyPmLpFl 162 of 208 menu

Práce s příznaky v Pythonu

Příznak - je speciální proměnná, která může nabývat pouze dvou hodnot: True nebo False. Pomocí příznaků lze řešit úlohy, které ověřují nepřítomnost něčeho: například lze zkontrolovat, že v seznamu není prvek s určitou hodnotou.

Pojďme vyřešit následující úlohu: je dán seznam s čísly, je třeba zkontrolovat, zda jsou všechny prvky kladné. K tomu nastavíme speciální proměnnou flag, která bude před začátkem cyklu pravdivá. A při nalezení záporného čísla v cyklu změníme její hodnotu na False. Abychom poznali výsledek kontroly, vypíšeme proměnnou flag po cyklu do konzole:

lst = [1, 2, 3, 4, 5] flag = True for el in lst: if el < 0: flag = False print(flag) # vypíše True, protože všechna čísla jsou kladná

Dobrou praxí je pojmenování proměnné s příznakem názvem, který odráží zadanou podmínku. Přejmenujme flag na isAllPositive. A pro názornost změníme jedno číslo v seznamu na záporné:

lst = [1, 2, 3, -4, 5] isAllPositive = True for el in lst: if el < 0: isAllPositive = False print(isAllPositive) # vypíše False, protože existuje záporné číslo

Pokud má procházený seznam mnoho hodnot a je třeba cyklus zastavit po nalezení prvního záporného čísla, je třeba použít příkaz break:

for el in lst: if el < 0: isAllPositive = False break

Při práci s příznaky, abychom poznali výsledek provedení cyklu, můžeme vypsat nikoli hodnotu příznaku, ale libovolnou zprávu pomocí dodatečného if.

Přepišme předchozí příklad. Pokud jsou všechny prvky kladné, ať se vypíše '+++', pokud ne - '---':

for el in lst: if el < 0: isAllPositive = False break if isAllPositive: print('+++') else: print('---') # vypíše '---'

Je dán seznam. Ověřte, že všechny jeho prvky jsou kladná čísla.

Je dáno celé číslo. Ověřte, zda je prvočíslem, tedy dělitelné pouze jedničkou a samo sebou.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout