Pythoni while-silmus võib algajatele segadust tekitada. Kui aga mõistate loopimise mõistet, mõistaksite, et Pythoni "silmus" -eelne "while" on pelk tingimus.

Heidame pilgu Pythoni omadele samas loop ja kuidas saate seda programmeerimisprobleemide lahendamiseks kasutada.

Kust saab kasutada silmust?

Konkreetne tingimus järgneb a samas silmus. See määrab kindlaks, mis toimub silmus. Kuigi see tingimus jääb püsima Tõsi, jätkavad tsüklis olevad avaldised täitmist.

Üldiselt tuleb loopimine meelde, kui peate programmeerimisel läbi töötama loendi iga elemendi või massiivi. A samas loop jätkab ka täitmist seni, kuni tsüklis olev lause selle peatab.

Seotud: Kuidas tööprotsess töötab arvutiprogrammeerimisel

Kuidas töötavad aasad arvutiprogrammeerimisel

Silmused on üks esimesi juhtimistüüpe, mida saate programmeerimisel õppida. Ilmselt teate, millal ja millal tsüklite jaoks on olemas, kuid mida saavutus-silmus saavutab?

Hea näide oleks kontrolltegevus haigete loomade tuvastamiseks lambakarjas. Selle saate omistada

instagram viewer
samas silmus, seades temperatuuripiiranguks 37 kraadi. Mis tahes väärtus, mis ületab seda, tähendab, et lammas on haige.

Selle avalduse tegemiseks a samas silmus, võite öelda: "kui lamba temperatuur on üle 37 kraadi, printige ebatervislik."

Nagu arvata oligi, siis samas lause prindib tulemuse "ebatervislik" pidevalt seni, kuni seatud tingimus püsib Tõsi.

Kuidas kasutada Pythoni aasade ajal - praktikas

Nagu varem öeldud, töötab mõnda aega loop lõpmatuseni, kui pole mingeid tingimusi, mis seda peataksid. Siin on näide määramatust samas silmus:

samas kui 3 <5:
print ("See on vähem kui 5")

Tingimus samas silmus ülaltoodud koodis on 3 < 5.

Nüüd vaatame samas karjakontrolli näite silmusekood eelmisest jaotisest:

StdTemperatuur = 37 
lamba temperatuur = 38
samas lammas_temp> StdTemperature:
print ("ebatervislik")
muu:
trükk ("tervislik")

Ülalolevas koodijupis on temperatuuripiirang 37. The lambatemp muutuja salvestab iga lamba temperatuuri. The samas silmus väljastab "ebatervislikku", kuni temperatuur on üle 37 ° C; see on antud juhul tsükli käivitamise tingimus. Kui muudad lambatemp väärtuseni alla 37, täidab see muud avaldus.

Kuid kasutades a samas silmus ülaltoodud probleemi lahendamiseks on liiga primitiivne ja skaleerimatu. Seda seetõttu, et peate väärtust käsitsi muutma lambatemp muutuv iga kord, kui peate lammast testima. See tähendab, et massiivil on seda keeruline kasutada. Selle lahendus ei kuulu käesoleva artikli reguleerimisalasse.

Vaatamata sellele peaks see näide andma teile mõne ülevaate selle kohta, mida a samas lause teeb Pythoni tsüklis.

Koodi pideva töötamise peatamiseks võite tutvustada a murda lause sellesse näidiskoodi:

StdTemperatuur = 37 
lamba temperatuur = 38
samas lammas_temp> StdTemperature:
print ("ebatervislik")
murda
muu:
trükk ("tervislik")

Vaatame a-i veel ühte juhtumit samas tsükkel, luues loendi numbritest vahemikus 1 kuni 10:

a = 11
b = 1
samas b a - = 1
trükk (a)

Eespool olev koodiplokk loeb numbrist 10 kuni 1. Samuti võite väidet tõlgendada nii: "kui üks on alla üheteistkümne, lahutage see kõigist eelmine number ja anna selle tulemus järgmise loendusena. "See töötab nii, et eemaldate selle iga kord eelmisest numbrist täidab samas juhendamine.

Samuti saate modifitseerida samas ülaltoodud silmus iga väljundi korrutamiseks 2-ga:

a = 11
b = 1
samas b a - = 1
print (a, "x", "2", "=", a * 2)

Boole'i ​​avaldist saab kasutada a-ga samas silmus samuti. Vaadake allolevat koodilõiku, et näha, kuidas see töötab:

a = 10
b = 2
samas b <10:
b + = 1
trükk (b)
kui b == 8:
trükk (a)
murda

Ülaltoodud kood annab väljundi, mis loeb kõiki teisi täisarvu vahemikus 3 kuni 10, ilma numbrit 9 lisamata. The murda avaldis tagab, et silmus lõpetab loendamise, kui see jõuab kümneni. Selle asjakohasuse mõistmiseks võite selle eemaldada murda avaldus, et näha, kuidas see läbi tuleb.

Kuid selle asemel, et kasutada a murda, saate kasutada jätkata väljendi sama tulemuse saamiseks. Selle toimimise mõistmiseks proovige võrrelda ülaltoodud koodilõiku allolevaga:

a = 10
b = 2
samas b <10:
b + = 1
kui b == 9:
jätkata
trükk (b)

Selle asemel, et väljundit juhtida a-ga murda, ülaltoodud kood juhendab teie programmi jätkata loendust arvestamata 9.

Kõiki paarisnumbreid vahemikus 1 kuni 10 saate muuta ka ülal olevat silmust while.

a = 10
b = 1
samas b <= 10:
b + = 1
kui b% 2 == 0:
trükk (b)

Märge: Kui te ei soovi neid näiteid Pythoni sisseehitatud IDLE-ga käitada, saate seda teha kasutage Jupyteri märkmikku samuti, kuid peate luua ja aktiveerida Pythoni virtuaalne keskkond selle võimaluse kasutamiseks.

Kas mõnel aasal on praktikas piiranguid?

Kuigi see lahendab konkreetseid probleeme reaalses elus, a samas Massiivide kogumiga tegelemisel on Pythoni silmusel mõned piirangud.

Praktikas, erinevalt jaoks silmus, a samas loop ei paku kontrollivoo avalduses spetsiifilisust. Kuid a samas loopil on ka oma rakendused, seega on vaja mõista, kuidas seda oma programmides kasutada.

E-post
Kuidas Pythonis oma moodulit luua, importida ja uuesti kasutada

Selgitame Pythonis koodi korduvkasutamise olulist põhialust: mooduleid.

Seotud teemad
  • Programmeerimine
  • Programmeerimine
  • Python
Autori kohta
Idowu Omisola (45 artiklit on avaldatud)

Idowu on kirglik kõigest nutikast tehnoloogiast ja tootlikkusest. Vabal ajal mängib ta kodeerimisega ringi ja lülitub igavuse korral malelauale, kuid armastab ka rutiinist lahti murda. Tema kirg näidata inimestele moodsate tehnikate kohta motiveerib teda rohkem kirjutama.

Veel Idowu Omisolalt

Telli meie uudiskiri

Liituge meie uudiskirjaga, et saada tehnilisi näpunäiteid, ülevaateid, tasuta e-raamatuid ja eksklusiivseid pakkumisi!

Veel üks samm !!!

Palun kinnitage oma e-posti aadress meilis, mille me just saatsime.

.