28.01.2015 Views

Tutorial Python - Starship

Tutorial Python - Starship

Tutorial Python - Starship

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CAPITOLUL<br />

PATRU<br />

Structuri de control<br />

În afară de buclele de tip while (explicate anterior), <strong>Python</strong> dispune de structurile de control obişnuite, întâlnite<br />

şi în celelalte limbaje.<br />

4.1 Instrucţiunea if<br />

Poate că cea mai cunoscută instrucţiune de control este instrucţiunea if. Exemplu:<br />

>>> x = int(raw_input("Introduceti un numar intreg : "))<br />

>>> if x < 0:<br />

... x = 0<br />

... print ’Negativul schimbat in zero’<br />

... elif x == 0:<br />

... print ’Zero’<br />

... elif x == 1:<br />

... print ’Unul singur’<br />

... else:<br />

... print ’Mai multi’<br />

...<br />

Pot exista mai multe secţiuni elif sau niciuna, iar secţiunea else este opţională. Cuvântul cheie ‘elif’<br />

este evident prescurtarea de la ‘elseif’, şi este folositor pentru a evita tabularea excesivă. O secvenţă<br />

if..elif..elif funcţionează ca un bloc case sau switch, secvenţe proprii altor limbaje .<br />

4.2 Instrucţiunea for<br />

Instrucţiunea for din <strong>Python</strong> diferă un pic faţă de ce a-ţi întâlnit în C sau Pascal. În loc de o iteraţie dată<br />

de o progresie aritmetică (Pascal), sau de o iteraţie foarte flexibilă, pentru care programatorul poate defini atât<br />

pasul iteraţiei, cât şi condiţia de oprire (C), iteraţiile instrucţiunii <strong>Python</strong> for funcţionează după elementele unei<br />

secvenţe (sir sau listă).<br />

>>> # Masoara marimea unor siruri<br />

... a = [’cat’, ’window’, ’defenestrate’]<br />

>>> for x in a:<br />

... print x, len(x)<br />

...<br />

cat 3<br />

window 6<br />

defenestrate 12<br />

Nu este normal (şi sigur) ca secvenţa iterată să fie modificată în timpul secvenţei for ( este cazul numai al<br />

secvenţelor modificabile, cum ar fi listele). Dacă apare necesitatea de a modifica secvenţa în timpul iteraţiei,<br />

19

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!