Zanimljivo

Sve što smo dosada naučili, možemo iskoristiti da pišemo neke zanimljive programe. Na primer, želimo da napišemo program koji će uneti glagol u infinitivu prebaciti u prvo lice jednine futura. Ceo program kucajte u konzoli sa strane, da biste videli kako radi.
Dakle, prvo je potrebno uneti glagol. Za unošenje teksta sa tastature koristimo funkciju raw_input(). U zagradama se može nalaziti tekst koji se pojavljuje prilikom pokretanja programa kao informacija korisniku o tome šta treba da unese sa tastature. (Vidimo u našem primeru da je to tekst: 'Unesite glagol u infinitivu:').

  
glagol = raw_input('Unesite glagol u infinitivu:')
			

Promenljivoj glagol dodeljujemo vrednost koju unosimo koristeći funkciju raw_input(). Sledeće što radimo jeste korišćenje metoda lower(), koji primenjujemo nad promenljivom glagol. Ovaj metod sva velika slova promenljive glagol prebacuje u mala i taj novi string dodeljujemo promenljivoj glagol. Ovo nam je potrebno zato što Pajton pravi razliku između malih i velikih slova, pa ćemo posmatrati samo mala slova.

 
glagol=glagol.lower()
			

Proveravamo da li je string koji je korisnik uopšte uneo reč. Odnosno, funkcijom len() proveravamo da li je dužina našeg stringa manja od 2 (ne postoje glagoli u infinitivu čija je dužina manja ili jednaka od 2, npr. “ći” nije glagol), a negacijom metoda isalpha() proveravamo da li se u stringu koji je korisnik uneo nalaze još neki karakteri osim slova (npr. brojevi, znaci interpunkcije itd.)

 
if len(glagol) <=2 or not glagol.isalpha():
	print ('Niste uneli glagol!')
	

Ako je bilo koji od ova dva uslova ispunjen, ispisuje se “Niste uneli glagol”. U suprotnom, hoćemo da promenljivoj kraj dodelimo string koji sadrži poslednja dva karaktera stringa glagol. Njih izdvajamo na sledeći način:

 
else:
	kraj=glagol[len(glagol)-2:len(glagol)]

Kad smo izdvojili poslednja dva slova glagola, hoćemo da proverimo da li se naš glagol završava na “ti” ili na “ći”, pošto građenje futura nije isto za ova dva slučaja. Prvo proveravamo da li je korisnik možda uneo glagol koji nije u infinitivu, odnosno da li se kraj razlikuje i od “ti” i od “ći”, i ako nije u infinitivu ispisujemo korisniku poruku: 'Niste uneli glagol u infinitivu!' . U kodu to izgleda ovako:

 
if (kraj!='ti') and (kraj!='ci'):
	print ('Niste uneli glagol u infinitivu!')

Ako je korisnik ispravno uneo glagol u infinitivu, on se može završavati na “ti” ili “ći”. Prvo proveravamo da li se glagol završava na “ti” i gradimo njegov futur tako što pravimo podstring stringa glagol koji ne sadrži dva poslednja slova stringa glagol, a zatim na taj podstring nadovezujemo string “cu”. Dobijeni string ispisujemo koristeći funkciju print.

 
elif kraj=='ti':
	print (glagol[0:len(glagol)-2]+'cu')

Najzad, ako prethodni uslovi nisu ispunjeni, znači je korisnik uneo glagol koji se završava na “ći”, pa futur gradimo tako što na sam string glagol nadovežemo string “ cu” i ispisujemo futur koristeći funkciju print.

 
else:
	print (glagol+" cu")

Time je završen kod našeg programa za građenje futura.


glagol = raw_input('Unesite glagol u infinitivu:')
glagol=glagol.lower()
if len(glagol) <=2 or not glagol.isalpha():
	print ('Niste uneli glagol!')
else:
	kraj=glagol[len(glagol)-2:len(glagol)]
if (kraj!='ti') and (kraj!='ci'):
	print ('Niste uneli glagol u infinitivu!')
elif kraj=='ti':
	print (glagol[0:len(glagol)-2]+'cu')
elif kraj=='ti':
	print (glagol[0:len(glagol)-2]+'cu')
else:
	print (glagol+" cu")
            
Kopiraj
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.

;