DatoriProgrammēšana

Pītona programmēšanas valoda: cilpas

Python programmēšanas valodā (arī "Python" vai "Python") ir vairāki veidi, kā cilpa darbību. Galvenie rīki, lai īstenotu iterāciju Python ir laiks un cilpas. Vienlaikus cilpa ir daudz universālāka nekā tā, tāpēc tā darbojas lēnāk. Tomēr tas nenozīmē, ka tas ir labāk! Par cilpu tiek izmantots daudz biežāk, jo ar tās palīdzību tiek īstenoti vissarežģītākie uzdevumi, lai izveidotu daudzlīmeņu un daudzconcidentu programmas.

Pitons: cikls ar postcondition

Cikli ar postcondition ir cilpas, kamēr tie ir vispopulārākie organizatoriskie konstruējumi konkrētā programmēšanas vidē. Cikls darbojas vienlaikus ar "tik ilgi, cik". Tas nozīmē sekojošo: kaut kāds stāvoklis atgriež patieso vērtību, tas darbosies! Šo dizainu sauc par "ciklu", jo funkcionālā vadība tiek virzīta no sākotnējās vērtības. Pieslēgšanās cilnes Python laikā tiek īstenota brīdī, kad vērtība kļūst nepareiza. Šajā brīdī tulks nodod programmas izpildi nākamajam funkcionālā semantikas segmentam, ti, jaunajai rindiņai, kas atrodas pēc bloka ar laiku.

Python programmēšanas valodā cilpas ar postcondition kamēr ir šāds sintakse:

1. Kamēr (nosacījums):

2. izteiciens

Izteiksme var būt vai nu viena instrukcija, vai vairākas. Nosacījums vienmēr ir noteiktā patiesā vērtība vai vērtība, kas nav neviena vērtība. Šāda konstrukcija darbojas tik ilgi, kamēr konkrētais nosacījums ir taisnība.

Piemēram, izmantojot Python cilni while loop

Mēs izskaidrosim cik cilpu. Pītons diezgan strukturēts tā atkārtojums:

A = 0
Kamēr <7:
Drukāt ("A")
A = a + 1

Mēs deklarējām mainīgo lielumu "a" un iestatījām to uz nulli. Tad mēs iestatām nosacījumu "kamēr ir <7", tas ir, kamēr mainīgais "a" ir mazāks par skaitli "7", mūsu cikls tiks izpildīts, līdz tas kļūst nepatiess.

Un viltus (tas ir, tas iziet no cilpas) tas kļūs tad, kad mainīgais kļūst lielāks par skaitli "7". Lai tas notiktu, tas katru reizi palielinās par 1, ko mēs norādām rindā "a = a + 1".

Ja jūs izmantojat šo konstrukciju, burts "A" kolonnā tiks parādīts 7 reizes!

A
A
A
A
A
A
A

Bezgalīgs, bet cilts Python

Kā es varu izveidot bezgalīgu cilni Python? Nav grūti vispār domāt, jo cikls darbojas, kamēr tas iegūst nepatiesu vērtību, un ja šī vērtība vienkārši nepastāv? Atbilde uz jautājumu, iespējams, jau ir skaidra visiem. Kādos gadījumos ir bezgalīgs cikls, kas nepieciešams problēmas risināšanai? Šis piemērs ir tādas programmas īstenošana kā "pulkstenis". Neapšaubāmi, jums būs nepieciešams izmantot bezgalīgu cilpu, kas neatgriezeniski atjauninās un parādīs laiku.

Bezgalīgā cilpa bieži kļūda par iesācēju programmētājiem, kuri aizmirst pievienot cilpa statusa izmaiņas.

Apskatīsim šādu Python koda gabalu. Cikli šajā gadījumā tiek atkārtoti bezgalīgi (pēc simbola "#" ir komentārs):

Number = 1 # atzīt mainīgo skaitu un piešķirt tai vērtību 1

Lai gan numurs <10: # izveidojiet postcondition, kurā skaitlis ir mazāks par 10

Drukāt "Hello" # izpildiet nosacījumu (izdrukājiet ziņojumu "Hello")

Šādai programmai nevajadzētu steigties apkopot, jo tā tiks izpildīta uz nenoteiktu laiku. Mēs esam izvirzījuši tādus nosacījumus, saskaņā ar kuriem nekad nebūs nepatiesa vērtība: šajā gadījumā "skaitlis <10" ir nemainīgs un taisnīgs, tāpēc iterācija tiks veikta nepārtraukti, parādot N-to "Hello" ziņojumu skaitu. Lai apturētu pastāvīgās apkopošanas procesu, čaulā jums būs jāpiespiež Ctrl + C.

Python: sintakse. Laiks un cilpas

Kā minēts iepriekš, Python programmēšanas valodā ir vairāki veidi, kā organizēt izteiksmju grupas atkārtošanos. Par cilpu ir cilpas, kas nedaudz atšķiras no tā, kamēr partneris, jo tā konstrukcija ir nedaudz sarežģītāka nekā tikai postcondition. Mēs nerunājam par šī cikla universālumu, jo tas vienkārši neeksistē, bet var atzīmēt, ka cilpa darbojas daudz ātrāk nekā laikā. Daudzi veidi, kā atrisināt šo dizaina ātrumu, nedaudz uzlabo ciklu ar postcondition, tāpēc to daudz biežāk izmanto, lai veiktu virkni triviālo uzdevumu.

Kādi ir uzdevumi pirms cilpas? Neapšaubāmi, tas pats, kamēr - atkārtojiet visus procesus. Programmās, kuras izpilda Python, tiek plaši izmantota cilpa, kas spēj ieviest noteiktā elementu kopumu un apiet tās ķermenī dažādas iterācijas. Šīs konstrukcijas iespējas var tikt pielietotas, apstrādājot virknes vai sarakstus tāpat kā jebkuru citu iterētu objektu.

Piemēram, izmantojot cilni Python

Pieņemsim, ka mums ir skaitļu saraksts, un mums ir jāpalielina katrs elements (tas ir, numurs) par trim vienībām. Mēs varam īstenot šādu uzdevumu, looping, jo.

Apskatīsim nelielu piemēru, kurā mēs veiksim atbilstošās darbības (pēc simbola "#" ir komentārs):

Spisok_chisel = [5, 15, 25, 35, 45, 55, 65, 75, 85, 95] # paziņoja masīvu ar 10 cipariem

Count = 0 # izveidots skaitītājs ar nulles vērtību

Par elementiem spisok_chisel: # mēs ejam pa masīvu un uzraksti to elementiem

Spisok_chisel [skaits] = elementi + 3 #, skaitlis no masīva tiek palielināts par trīs

Count = count + 1 # iet uz nākamo numuru pēc indeksa

Iepriekšminētās konstrukcijas rezultāts būs:

Spisok_chisel = [8, 18, 28, 38, 48, 58, 68, 78, 88, 98]

Mūsu piemērā ir mainīgs skaits, kas mums ir jāuzrāda mainīgās vērtības masīva "spisok_chisel". Mainīgais skaitlis ieraksta indeksa vērtības katram elementam masīvā (katrs skaitlis sarakstā). Mainīgais elements "elementi" asociē iegūtās vērtības sarakstā. Konkrētajā cilpā mēs novērojam, kā tiek īstenota katra skaitliskā objekta apstrāde sarakstā. Cilnes iekšpusē katram ciparu objektam ar "count" indeksu pievieno pašreizējā atkārtotā elementa un tripleta summu. Tad mūsu indekss "count" tiek palielināts par vienu, un programmas izpildes plūsma tiek atgriezta deklarācijas sākumā. Tādējādi cilpa darbosies, līdz tā apstrādā katru elementu nosacījumā norādītajā masīvā. Ja kāds elements ir pazudis, bet tiek norādīts ar nosacījumu, cikla process tiks pabeigts. Pievērsīsim uzmanību vēl vienam niansam: ja jūs nerakstāt rindiņu "count = count + 1", neskatoties uz to, ka masīva objekti ir veiksmīgi apstrādāti, rezultāts tiek nepārtraukti pievienots pirmajam ciparu objektam ar nulles indeksu.

Tagad mēs varam atcerēties cilnes secības principus un uzzināt atšķirību (mēs atceramies, ka Python izeja no cilpas ar postcondition tiek veikta, pamatojoties uz loģiskiem kritērijiem - patiess (cilpa turpina darboties) vai false (cilpa apstājas)).

Kā rīkoties ar stīgu vērtību Pythonā, izmantojot konstrukciju?

Katrā programmēšanas valodā ir cikli, un tie parasti darbojas saskaņā ar to pašu principu, atšķirības ir pamanāmas tikai sintaksē. Tomēr valodas "Python" cilpa nav ne parasts, ne trivials, jo tā darbības princips neaprobežojas ar skaitītāju. Šis dizains šķērso katru elementu atsevišķi. Tas viss ir viegli izskaidrojams, piem., Darbs ar stīgām, bet vispirms apskatīsim cikla sastāvu:

Par mainīgo

Mainīgais lielums saglabā cikla rezultātu

Mainīgajā_2

Atslēgvārds "in" ir priekšnoteikums darbam ar cilpu. No mainīgā_2 mēs paplašinām vērtību, kuru mēs atkārtojamies. Skaidrības un skaidrības labad apskatīsim nelielu piemēru par to, kā strādāt un vadīt līnijas Python:

Char = 'programming' # Deklarē mainīgo un piešķir tam virknes vērtību

Par slovo in char: # Izveidojiet mainīgo ar nosaukumu slovo, kurā tiks saglabāti indeksi no mainīgā char

Drukāt (slovo, end = '^') # Parādīt slovo un pēc katras vēstules mēs ievietojam simbolu - putnu.

Skripta rezultāts:

N ^ p ^ o ^ r ^ p ^ a ^ m ^ m ^ un ^ p ^ o ^ in ^ a ^ n ^ u ^ e

Turpināt paziņojumu

Operators turpina īsteno pāreju uz nākamo ciklu, kas norādīts ar nosacījumu, neatkarīgi no atlikuma cilpa ķermenī. Jūs varat izmantot turpinājuma paziņojumu divās cilpās - par laiku un laiku.

Apsveriet piemēru:

Par skaitīšanu "mēs atkārtot katru burtu, izņemot o '

Ja skaits == 'o':

Turpināt

Drukāt (skaits * 2, beigas = '')

Rezultāts ir šāds:

Ппввттрриймм ккаажждduвуюю ббууккввву ,, ккррммее

Kad apstrādātājs atrada burtu "o" rindā "atkārtot katru burtu, izņemot o", programmas izpilde tika nekavējoties novirzīta uz līniju pēc vārda "turpināt", kur pēc nosacījuma tas bija norādīts, lai dublētu katru burtu.

Pārtraukuma paziņojums

Atslēgvārds "pārtraukums" ir ievietots vietā, kur cilpa jāpārtrauc, negaidot tās pabeigšanu, ko noteica nosacījums. Šo dizainu ļoti bieži izmanto, rakstot programmas ar lielu loģiku un apstākļiem.

Apsveriet nelielu pārtraukuma paziņojuma piemēru:

Par skaitīšanu "mēs atkārtot katru burtu, izņemot o '

Ja skaits == 'o':

Pārtraukums

Drukāt (skaits * 2, beigas = '')

Rezultāts ir šāds:

Pp

Kad trenažieris atrada burtu "o" rindiņā "atkārtot katru burtu, izņemot o", tad programmas izpilde tika nekavējoties apstājusies, neskatoties uz to, ka nākamajā rindā ir daži cikla nosacījumi.

Burvju vārds cits

Jebkuras cilpas gadījumā jūs varat izmantot citus nosacījumus. Kas tas ir? Tas pārbauda, vai pārtraukums tika veikts pēc pārtraukuma metodēm vai parastā veidā. Bloks ar norādītajiem noteikumiem iekšā cits sāks īstenot tikai tad, ja izeja no cilpas ir ieviesta, neizmantojot pārtraukuma kontūru.

Apsveriet nelielu piemēru:

Par skaitli "sveiki pasaulē":

Ja skaits == 'I':

Pārtraukums

Citādi:

Drukāt ("Jūsu frāze nav burts" I ")

Skripta rezultāts:

Jūsu frāzē nav burta "es"

Piemēri apgrieztās secības cilpām Python programmēšanas valodā

Kā Pītonā tiek īstenota reversā cilpa? Iedomāsimies, ka mēs rakstām programmu, kurai vajadzētu atpazīt rakstzīmju virkni un izdrukāt to apgrieztā secībā. Kā to īstenot?

Apsveriet piemēru zemāk:

Slovo = 'programmēšana'

New_slovo = []

Skaits diapazonā (len (s), 0, -1):

New_slovo.append (s [i-1])

New_slovlo

["N", "p", "o", "r", "p", "a", "m", "m", "un", "p", "o", "in" A ',' n ',' un ',' e ']

Drukāt (new_slovo)

["N", "p", "o", "r", "p", "a", "m", "m", "un", "p", "o", "in" A ',' n ',' un ',' e ']

Drukāt ('' Join (new_slovo))

Skripta rezultāts:

Einavorimargorp

Nēsātās cilpas

Python programmēšanas valodā cilpas ir arī ligzdotas, tas ir, ievietotas citas ķermenī. Katram ciklam var būt sava slēgta cilpa, un tādējādi jūs varat veidot kāpnes līdz bezgalībai. Pirmajā atkārtojumā ārējā cilpa izsauc iekšējo cilpu, kas izpilda pirms tās pabeigšanas, tad visa kontrole tiek novirzīta uz ārējās cilpas ķermeni. Katrai valodai ir savas iebūvēto cilpu īpatnības, redzēsim, kā tās sakārtotas programmēšanas valodā "Python".

Ja tiek izmantotas ligzdotas cilpas, Python piedāvā šādu sintaksi:

Par mainīgo secīgā mainīgā:

Par mainīgo secīgā mainīgā

Darbība

Darbība

Nesaistīto cilpu īpatnības ietver faktu, ka jebkāda veida cikls var tikt izmantots jebkura veida ciklā! Tas nozīmē, ka cikla laikā (vai arī) cilpa cilpa var būt ligzdota vai, atkal, gan, bet gan otrādi.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 lv.delachieve.com. Theme powered by WordPress.