Tutvustus Pythoni vaatamise ajal - tehke tõelist näidislauset

Silmused on käskude jada, mida täidetakse seni, kuni tingimus on täidetud. Vaatame, kuidas silmused Pythonis töötavad.

Mis on silmused?

Kui õpite kodeerima, on tsüklid üks peamisi mõisteid, millest peaksite aru saama. Silmused aitavad teil käskude jada täita, kuni tingimus on täidetud.

Pythonis on kahte tüüpi silmuseid.

  • Silmuste jaoks
  • Kuigi silmuseid

Mõlemat tüüpi silmuseid saab kasutada sarnaste toimingute jaoks. Kuid õppides tõhusaid programme kirjutama, saate teada, millal mida kasutada.

Selles artiklis vaatleme Pythonis silmuseid. Silmuste kohta lisateabe saamiseks vaadake seda artiklit, mis hiljuti avaldati saidil freeCodeCamp.

Kuigi aasad

Mõne aja taguse tsükli mõiste on lihtne: kui tingimus on tõene -> Käivita minu käsud.

While-silmus kontrollib tingimust iga kord ja kui see vastab väärtusele "true", täidab see silmus olevad juhised.

Enne kui hakkame koodi kirjutama, vaatame vooskeemi, et näha, kuidas see töötab.

Nüüd kirjutame koodi. Numbrite 1–10 printimiseks kirjutate lihtsa while-tsükli.

#!/usr/bin/python x = 1 while(x <= 10): print(x) x = x+1

Kui vaatate ülaltoodud koodi, töötab silmus ainult siis, kui x on väiksem või võrdne 10-ga. Kui initsialiseerite x-i 20-ks, siis tsükkel ei käivitu kunagi.

Siin on selle loopi väljund:

> python script.py 1 2 3 4 5 6 7 8 9 10

Do-While Loop

While-silmusel on kaks variatsiooni - while ja do-While. Nende kahe erinevus seisneb selles, et do-while jookseb vähemalt üks kord.

Mingi aja jooksul ei pruugi üks kord isegi käivituda, kui tingimus pole täidetud. Do-while töötab aga üks kord, seejärel kontrollige järgnevate tsüklite seisukorda.

Vaatamata sellele, et see on enamikus populaarsetes programmeerimiskeeltes, puudub Pythonil loomulik käsk Do-while. Kuid saate hõlpsalt jäljendada tehinguid, kasutades muid lähenemisviise, näiteks funktsioone.

Proovime käsu tegemise aega, pakkides käsud funktsiooni.

#!/usr/bin/python x = 20 def run_commands(): x = x+1 print(x) run_commands() while(x <= 10): run_commands()

Ülaltoodud kood käivitab "run_commands ()" funktsiooni üks kord enne while-silmuse käivitamist. Kui while-tsükkel algab, ei käivitata funktsiooni "run_commands" kunagi, kuna x on 20.

Kuigi - muu

Kui silmuse tingimus nurjub, saate käivitamiseks lisada lause "else".

Lisame koodile veel ühe tingimuse, et printida „Valmis“, kui oleme numbrid 1–10 printinud.

#!/usr/bin/python x = 1 while(x <= 10): print(x) x = x+1 else: print("Done")

Ülaltoodud kood prindib kõigepealt numbrid vahemikust 1 kuni 10. Kui x on 11, siis tingimus while ebaõnnestub, käivitades muu tingimuse.

Üherealine avaldus

Kui teie while-tsüklis on ainult üks koodirida, saate kasutada ühe rea süntaksit.

#!/usr/bin/python x = 1 while (x): print(x)

Lõputud aasad

Kui te pole silmuste kirjutamise ajal ettevaatlik, loote lõpmatud silmused. Lõputud silmused on need, kus tingimus on alati tõene.

#!/usr/bin/python x = 1 while (x >= 1): print(x)

Ülaltoodud kood on näide lõpmatust silmusest. X väärtuse muutmiseks pole käsku, nii et tingimus "x on suurem või võrdne 1" on alati tõene. See muudab silmuse igaveseks.

Silmuste kirjutamisel olge alati ettevaatlik. Väike viga võib viia lõpmatu silmuseni ja teie rakenduse krahhi.

Silmusjuhtimine

Lõpuks vaatame, kuidas kontrollida silmuse voogu selle töötamise ajal.  

Päris maailmas rakendusi kirjutades kohtate sageli stsenaariume, kus peate lisama lisatingimused, et tsükkel vahele jätta või tsüklist välja murda.

Break

Vaatame, kuidas silmusest välja murda, kui tingimus on tõene.

#!/usr/bin/python x = 1 while (x <= 10): if(x == 5): break print(x) x += 1

Ülaltoodud koodis peatab silmus täitmise, kui x on 5, hoolimata sellest, et x on suurem või võrdne 1-ga.

Jätka

Siin on veel üks stsenaarium: öelge, et soovite tsükli vahele jätta, kui teatud tingimus on täidetud. Siiski soovite jätkata järgmisi hukkamisi seni, kuni peamine väärtus muutub valeks.

Selleks saate kasutada märksõna "jätka", näiteks:

#!/usr/bin/python x = 1 while (x <= 10): if(x == 5): x += 1 continue print(x)

Ülaltoodud näites prinditakse silmus vahemikus 1 kuni 10, välja arvatud 5. Kui x on 5, jäetakse ülejäänud käsud vahele ja juhtimisvoog naaseb programmi while algusesse.

Kokkuvõte

Silmused on programmeerimisel üks kasulikumaid komponente, mida igapäevaselt kasutate.

For and while on Pythoni kaks peamist silmust. Lingil while on kaks varianti, while ja do-while, kuid Python toetab ainult esimest.

Programmivoogu saate juhtida käskude „break” ja „Continue” abil. Olge alati teadlik lõpmatute silmuste loomisest kogemata.

Kirjutan regulaarselt teemadel, sealhulgas tehisintellekt ja küberturvalisus. Kui teile see artikkel meeldis, saate siin lugeda minu ajaveebi.