Range()


Ako je potrebno vršiti iteraciju kroz niz brojeva, ugrađena funkcija range() to omogućava. Range() funkcija generiše listu. Funkcija range() vraća listu brojeva u datom rasponu uključujući prvi, bez poslednjeg. Može imati jedan, dva ili tri argumenta.

Ako funkcija range() ima samo jedan argument, tada je njena povratna vrednost lista brojeva od 0 pa do prvog celog broja manjeg od argumenta:


n=range(5)
print (n) 
		
Kopiraj

Nakon pokretanja programa kao rezultat dobićemo:

>>  [0, 1, 2, 3, 4]

Ako range() funkcija ima dva argumenta, onda ona vraća listu brojeva počevši od prvog argumenta do drugog argumenta (ne uključujući ga).

Primer kada funkcija range() ima dva argumenta:


l=range(2,5)
print (l)
		
Kopiraj

Nakon pokretanja programa kao rezultat dobićemo:

>>  [2, 3, 4]

Ako range() funkcija ima tri argumenta, onda ona vraća listu brojeva počevši od prvog argumenta, sa korakom drugog argumenta funkcije uz uslov da poslednji element liste bude manji od trećeg argumenta.

Primer kada funkcija range() ima tri argumenta:


k=range(1,10,2)
print (k)
		
Kopiraj

Nakon pokretanja programa kao rezultat dobićemo:

>>  [1, 3, 5, 7, 9]

Primer kada funkcija range() ima tri argumenta, a drugi argument, tj. korak je negativan broj:


m=range(-10, -100, -30)
print (m)
		
Kopiraj

Nakon pokretanja programa kao rezultat dobićemo:

>>  [-10, -40, -70]

Ispisujemo sve elemente liste korišćenjem range() funkcije:


#Dužine liste n je 3
#Range funkcija sa ovim parametrima vratiće listu [0,1,2]
n=["Jabuka","Banana","Kivi"]
def stampaj_listu(x):
#Kako indeksiranje liste počinje od 0
#U for petlji prolazimo kroz listu [0,1,2]
      for i in range(0,len(x)):
#I ispisujemo redom svaki element
        print (x[i])    
print (stampaj_listu(n))
		
Kopiraj

Nakon pokretanja programa kao rezultat dobićemo:

>>  Jabuka
      Banana
      Kivi
      None

Primer prikazuje kako pomoću range() funkcije u for petlji prolazimo kroz listu i svaki element liste množimo sa 2:


def moja_funkcija(x):
      for i in range(0, len(x)):
            x[i] = x[i] * 2
      return x
 #ovde pozivamo funkciju moja_funkcija koja ima argument listu generisanu pomoću range() funkcije
print (moja_funkcija(list(range(0,3))))

		
Kopiraj

Nakon pokretanja programa kao rezultat dobićemo:

>>  [0, 2, 4]

Sabiramo sve elemente liste pomoću range() funkcije:


n = [3, 5, 7]
def sve(x):
      brojac = 0
      for i in range(len(x)):
           brojac+=x[i]
      return brojac    
print sve(n)
		
Kopiraj

Nakon pokretanja programa kao rezultat dobićemo:

>>  15

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.

;