While/Else

Slično kao i kod if naredbe i while ima opcionu else granu, koja se izvršava onda kada je uslovu prosleđena vrednost False. Dakle, while petlja se izvršava više puta dok sve dok je uslov True, a else grana se izvršava samo jednom onda kada uslov postane False.

Međutim ukoliko unutar tela petlje dođe do izvršavanja break komande, else grana će biti zaobiđena. Pojednostavimo kôd primera 3 dodavši mu else granu.

  
broj_ocena = int(raw_input("Unesite broj ocena"))
niz = []
x=1
while x<=broj_ocena: 
    ocena= int(raw_input("Unesite ocenu: "))
    
    x=x+1

    if ocena<1 or ocena>5:
        print ("Dozvoljeno je unositi samo ocene od 1 do 5, prekid petlje")
        break
    
    niz.append(ocena)
    
else: #Ovaj deo koda se  izvršava samo ako su uneti svi elementi niza
    print ("unete su ocene: "+str(niz))
            
Kopiraj

Umesto da sami direktno proveravamo da li je lista niz pravilno popunjena, else grana to radi za nas!

Uradimo sada jedan primer while petlje čiji prekid zavisi od slučajno izabranog elementa rečnika boja.

  
import random
boje = {0:"crvena",1:"zelena",2:"plava",3:"zuta",4:"roze",5:"ljubicasta",
6:"braon",7:"crna",8:"bela",9:"teget",10:"bez",11:"bordo",12:"ciklama"}

t_boja=raw_input("Unesite boju koju trazite ")

kljuc=random.randint(0,12);
br_iter=0;
while boje[kljuc]!=t_boja:
    print ("U iteraciji %d nasli smo %s a ne %s"%(br_iter, boje[kljuc], t_boja))
    kljuc=random.randint(0,12);
    br_iter+=1
else: print ("Nadjena je "+t_boja+" posle "+str(br_iter)+" iteracija")
            
Kopiraj

Šta se dešava ako korisnik unese neku boju koje nema u našem rečniku? Tada uslov nikada neće biti False i imaćemo beskonačnu petlju. Stoga je bitno da napravimo mehanizam koji će pre ulaska u petlju proveravati ispravnost ulaza. Ovo može da se uradi preko dodatne funkcije proveri() čiji kod se nalazi na narednoj stranici


levo desno

Uputstvo

Neke od programa nećete moći da pokrenete na našoj konzoli, zato Vam predlažemo da sa zvaničnog sajta www.python.org preuzmete portabilnu verziju. Instalacija je vrlo jednostavna. Mi Vam predažemo da odaberete verziju 3.3.5 koju smo i mi koristili. Tekstualni editor u kome možete pisati svoje programe se pokreće preko programa koji se zove IDLE i automatski se instalira sa celim paketom. Novi program započinjete klikom na padajući meni "FILE" >> "NEW FILE". Možete ga pokrenuti pritiskom na dugme F5 na tastaturi.
Konzola koja se nalazi na sajtu omogućava rad sa većinom prezentovanog materijala, ali je naglašeno kada je potrebno preći na instaliranu konzolu.

;