CalculatoareProgramare

Python limbaj de programare: bucle

Limbajul de programare Python (ca „Python“ sau „Python“) Există mai multe moduri de a bucla o acțiune. Principalele instrumente pentru punerea în aplicare a oricărei iterație în Python - în timp ce buclele și pentru. Bucla în timp ce este mai mult decât universală pentru, deci este mai lent. Cu toate acestea, acest lucru nu înseamnă că este mai bine! Pentru bucla este folosit mai des, deoarece cu ea a realizat cele mai dificile sarcini pentru crearea de mai multe niveluri și programe mnogouslovnyh.

Python: ciclu cu postconditie

Cicluri cu postconditie - aceasta bucle in timp ce, care sunt structurile organizatorice cele mai universale din mediul de programare. Bucla în timp ce funcționează pe principiul „atâta timp cât“. Acest lucru înseamnă următoarele: în timp ce o anumită condiție va returna o valoare reală, va funcționa! Acest design este numit un „ciclu“, deoarece managementul funcțional al repetă ciclic, începând cu valoarea inițială. Afară, în timp ce ciclul de Python să fie puse în aplicare în momentul în care valoarea devine falsă. În acest moment, interpretul transmite programul la următorul segment funcțional-semantică, adică o nouă linie, care se află după blocul cu timp postconditie.

În limbaje de programare, în timp ce ciclurile Python postconditie au următoarea sintaxă:

1. În timp ce (condiție):

2. expresia

Expresia poate fi fie o singură declarație sau mai multe. Condiția este întotdeauna o adevărată semnificație a oricărei non-zero. Acest design funcționează atâta timp cât condiția specificată este adevărată.

Utilizarea ciclu în timp ce în „Python“, de exemplu,

Rassmotirim în timp ce bucla. Python este destul de structuri interesante iterații sale:

a = 0
în timp ce un <7:
imprima ( "A")
a = a + 1

Noi am declarat variabila „o“ și a cerut-o la zero. Apoi , setați condițiile „ în timp ce un <7“, adică, în timp ce variabila „a“ este mai mic decât numărul „7“, atunci bucla noastră va fi executat , atâta timp cât nu este fals.

Un fals (adică, va ieși din ciclul) va fi atunci când variabila va fi mai mare decât numărul „7“. Pentru ca acest lucru să se întâmple, este de fiecare dată incrementat cu 1, pe care le indicați în „a = a + 1“.

Dacă executați această construcție, litera „A“ va fi prezentat de 7 ori într-o coloană!

A
A
A
A
A
A
A

buclă fără sfârșit în timp ce în Python

Cum de a face o buclă fără sfârșit în Python în timp ce? Ghici nu este dificil, deoarece ciclul se execută până la până când primește o valoare fals, iar în cazul în care această valoare nu este pur și simplu acolo? Răspunsul la întrebarea este, probabil, deja totul este clar. În unele cazuri, este nevoie de o buclă infinită pentru a rezolva o problemă? Acest exemplu va servi ca o realizare a unui astfel de program, ca un „ceas.“ Aici, desigur, trebuie să utilizați o buclă infinită, care va fi actualizat permanent și arată timpul.

buclă infinită este de multe ori o greșeală programatori novice care uitați să adăugați un condiții ciclu de schimbare.

Să aruncăm o privire la următoarea bucată de cod Python. Ciclurile în acest caz reiterată pe termen nelimitat (după caracterul „#“ este un comentariu):

number = 1 # declară un număr variabil și îi atribuiți o valoare de 1

în timp ce numărul de <10: # crea postconditia, care în număr mai mic de 10

imprimare # condiție 'Bună ziua' (print «Hello» mesaj)

Un astfel de program nu ar trebui să se grăbească pentru a compila, deoarece va rula pe termen nelimitat. Am cerut astfel de condiții, care nu vor fi valori false stare «număr <10" , în acest caz și întotdeauna adevărat, astfel încât iterație va fi aducerea în mod constant numărul N-lea de«Hello»mesaje. Pentru a opri procesul de compilare etern, va trebui să apăsați tasta combinația Ctrl + C în coajă.

Python: sintaxa. În timp ce, și pentru bucle

După cum sa menționat mai sus, în limba de „Python“ de programare, există mai multe modalități de a organiza un grup de expresii repeta. Acesta vine la salvare bucla pentru, care este un pic diferit de omologul său în timp ce, pentru că designul său este un pic mai complicat decât doar postconditie. Să nu vorbim despre universalitatea ciclului, pentru că pur și simplu nu, cu toate acestea, trebuie remarcat faptul că pentru bucla este mult mai rapid decât un timp. O varietate de moduri de a rezolva proiectarea și performanța acestui ciclu de outperform mic cu postconditie, deci este mult mai probabil de a utiliza pentru a efectua mai multe sarcini triviale.

Care sunt provocările cu care se confruntă ciclul pentru? Fără îndoială, la fel ca și cea a while - iterăm orice proces. Notele de program făcute pe „piton“, este utilizat pe scară largă în buclă pentru, care este capabil să implementeze parcurgeri predeterminate multitudine de elemente și pentru a realiza în corpul său diverse iterarea peste ele. Caracteristici ale acestui design pot fi utilizate în linii de procesare sau liste la fel ca orice alt obiect iterate.

Exemplu de utilizare pentru ciclul în Python

Să presupunem că avem o listă de numere, și avem nevoie de fiecare element (de ex. E. Numărul) a crescut cu trei unități. Pentru a pune în aplicare o astfel de sarcină putem prin bucla, pentru metodele de buclă.

Să ne uităm la un exemplu rapid, în cazul în care vom efectua acțiunea corespunzătoare pentru acest lucru (după caracterul „#“ este un comentariu):

spisok_chisel = [5, 15, 25, 35, 45, 55, 65, 75, 85, 95] # matrice declarată care conține 10 cifre

count = 0 # contor creat cu zero,

pentru elemente în spisok_chisel: # itera peste matrice și scrie-l în elementele

spisok_chisel [conta] = elemente + # 3 număr tot mai mare de trei matrice

conta = count + 1 # du-te la numărul următor de pe index

Rezultatul construcției de mai sus va fi:

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

În exemplul nostru, există un număr variabil, pe care avem nevoie pentru a celebra valorile de schimbare în matrice «spisok_chisel». Numărătoarea variabilă se înregistrează o valoare a indicelui fiecărui element din matrice (fiecare număr din listă). «Elemente» variabile leagă valoarea rezultată în listă. In bucla for, vom vedea cum să pună în aplicare procesarea fiecărui obiect în lista numerică. În interiorul buclei, fiecare obiect numeric cu indicele «număr» adaugă valoarea elementului iterată curent și trei. Apoi, «conta» indexul nostru a crescut cu unul, iar fluxul de punere în aplicare a programului revine la începutul anunțurilor de construcție pentru. Astfel, bucla se va derula până până când a procesat fiecare element din matrice, dată de condiție. În cazul în care orice element lipsește, dar este stabilit de condiție, ciclul este complet. Atragem atenția mai mult un singur lucru: dacă nu scrie o linie de «count = count + 1" , în ciuda faptului că o serie de obiecte procesate cu succes, rezultatul va fi întotdeauna adăugate la primul indice obiect numeric de zero c.

Acum ne putem gândi în timp ce principiile de funcționare în buclă și să identifice diferența (amintim că, în Python în afara ciclului cu postconditie se realizează pe baza unor criterii logice - adevărate (ciclul continuă) sau false (ciclul se oprește)).

Cum de a trata un șir de caractere în Python folosind proiectarea pentru?

În fiecare limbaj de programare există cicluri, și lucrează, de obicei, pe același principiu, diferențele vizibile numai în sintaxa. Cu toate acestea, pentru bucla în limba „Python“ nu este un obișnuit și banal, deoarece principiul de funcționare nu este limitată la tejghea. Acest design enumără separat fiecare element. Toate acestea pot fi ușor de explicat prin exemplul de lucru cu siruri de caractere, dar mai întâi să se ocupe cu structura ciclului pentru:

pentru variabila

Acesta este stocat într-un rezultat de funcționare ciclu variabil

în peremennaya_2

cheie cuvânt «în» - este o condiție esențială atunci când se lucrează cu «pentru» ciclu. De la peremennoy_2 am trage valoarea care va fi iterat. Pentru claritate, și claritate, să ne uităm la un mic exemplu de modul în care să lucreze și pentru a sorta siruri de caractere în Python:

char = # „programare“ declara o variabilă și atribuie o valoare șir

pentru Slovo char: # Creați un Slovo variabilă, care va continua codurile busting de caracter variabil

imprimare (Slovo, end = '^') # Output Slovo și după fiecare literă, introduceți un simbol - o pasăre.

Rezultatul script-ul:

P ^ p ^ o ^ r ^ r ^ a ^ m ^ m ^ ^ și p ^ o ^ o ^ o ^ n ^ și ^ e

continua declarație

operatorul continua punerea în aplicare a tranziției la punerea în aplicare a următorului ciclu, dată de condiția, indiferent de soldul buclei. Utilizați continua declarație poate fi în două cicluri - pentru și în timp.

Luați în considerare acest exemplu:

incordat în „se repetă fiecare literă, cu excepția“

în cazul în care numărul de == 'o':

continua

imprimare (număr * 2, end = '')

Rezultatul va fi următorul:

Ppvvttrriimm kkaazhzhdduuyuyu bbuukkvvuu ,, kkrrmmee

Când handler găsit o literă „o“ din șirul „se repetă fiecare literă, cu excepția“ executarea programului a fost imediat transmis linia după cuvântul „“ continua „“, în cazul în care condiția a fost stabilită pentru a duplica fiecare literă.

declaraţie pauză

«Pauză» cuvinte cheie inserate în locul în care ciclul urmează să fie întrerupt fără a aștepta finalizarea acestuia, care a fost dată de condiție. Acest design este adesea folosit la scrierea de programe cu o mulțime de logică și condiții.

Luați în considerare un mic exemplu din situația pauză de lucru:

incordat în „se repetă fiecare literă, cu excepția“

în cazul în care numărul de == 'o':

pauză

imprimare (număr * 2, end = '')

Rezultatul va fi următorul:

nn

Când handler găsit o literă „o“ din șirul „se repetă fiecare literă în afară, despre“, atunci programul a fost oprit imediat, indiferent de ceea ce conține linia următoare unele dintre condițiile pentru ciclul.

Cuvântul magie altceva

Într-o serie de orice fel se poate aplica operatorul altcineva. Ce este pentru? De asemenea, el verifică dacă au fost comise în afara buclei înseamnă o pauză sau modul obișnuit. Bloc cu reguli predeterminate în punerea în aplicare altceva începe numai atunci când condiția ca ieșirea din ciclul a fost realizat fără structură de pauză.

Luați în considerare un mic exemplu:

incordat in 'Hello World':

dacă numărul == 'I':

pauză

altceva:

de imprimare ( „teza ta nu are nici o litera“ I „“)

Ieșirea din script-ul:

teza ta nu este litera „I“

Exemple de cicluri, în ordinea inversă a limbajului de programare Python

Implementat în Python ciclu invers? Să ne imaginăm că scrierea unui program care trebuie să recunoască linia de caractere și să se imprime în ordine inversă. Cum să pună în aplicare acest lucru?

Luați în considerare exemplul de mai jos:

Slovo = 'programare'

new_slovo = []

pentru conta în intervalul (len (s), 0, -1):

new_slovo.append (s [i-1])

new_slovlo

[, 'P' 'P', 'o', 'g', 'p', 'o', 'm', 'm', 'u', 'p', 'o', 'o', " a '' n '' u '' e „]

Print (new_slovo)

[ 'P', 'p', 'o', 'g', 'p', 'o', 'm', 'm', 'și', 'p', 'o', 'în', " o '' H '' u '' e „]

print ( ''. JOIN (new_slovo))

Rezultatul script-ul:

einavorimmargorp

bucle imbricate

În Python, există, de asemenea cicluri de programare și investiții, care este plasat în corpul unui alt. În fiecare ciclu poate fi o buclă imbricată, și de aceea este posibil să se construiască o scară la infinit. In prima iterație a buclei exterioare este desenată cu un apel la bucla interioară, care este executată înainte de finalizarea propriu, apoi controla toate redirecționat în corpul buclei exterioare. Fiecare limbă are propriile sale caracteristici de bucle imbricate, să ne uităm la modul în care acestea funcționează în limbajul de programare „Python“.

Dacă utilizați bucle imbricate, Python oferă următoarea sintaxă:

pentru secvența variabilă de variabile:

pentru secvența variabilă de variabile

acțiune (s)

acțiune (s)

Caracteristicile speciale ale bucle imbricate este faptul că în ciclul de orice tip poate fi utilizat ca orice tip de ciclu! Acest lucru înseamnă că, într-un ciclu în timp ce (sau) pot fi încorporate pentru un ciclu sau din nou, în timp ce și vice-versa.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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