54 lines
1.9 KiB
Python
54 lines
1.9 KiB
Python
|
# ucitati fajl u promenljivu
|
||
|
# podelimo taj tekst u reci
|
||
|
# napravimo recnik koji ce cuvati (brojac) broj ponavljanja svake reci u tekstu
|
||
|
#
|
||
|
# proci cemo kroz sve reci
|
||
|
# ako smo vec videli tu rec
|
||
|
# povecamo brojac za tu rec
|
||
|
# ako je to nova rec
|
||
|
# namestimo brojac za tu rec na 1
|
||
|
|
||
|
fajl = open("romeo and juliet.txt")
|
||
|
tekst = fajl.read()
|
||
|
fajl.close()
|
||
|
|
||
|
tekst = tekst.replace("."," ") # zamenjujemo tacke za razmake (efekivno izbacujemo tacke iz teksta)
|
||
|
tekst = tekst.replace("!"," ") # zamenjujemo uzvicnike za razmake
|
||
|
tekst = tekst.replace("?"," ") # zamenjujemo upitnike za razmake
|
||
|
tekst = tekst.replace("\""," ") # zamenjujemo navodnike za razmake
|
||
|
tekst = tekst.replace("-"," ") # zamenjujemo crtice za razmake
|
||
|
tekst = tekst.replace(","," ") # zamenjujemo zareze za razmake
|
||
|
# tekst = tekst.replace("\n"," ") # zamenjujemo znakove za novi red za razmake (ovo u nasem slucaju nije neophodno)
|
||
|
|
||
|
reci = tekst.split() # delimo tekst u reci (delimo ga tako sto svaki put kada naidjemo na razmak
|
||
|
# pravimo novu rec
|
||
|
|
||
|
tabela = {} # kreiramo recnik koji ce cuvati gorepomenute brojace
|
||
|
|
||
|
for rec in reci:
|
||
|
if rec not in tabela: # ako rec nije u tabeli, tj. ako nismo videli rec pre toga
|
||
|
tabela[rec] = 1
|
||
|
else: # u suprotnom rec je vec u tabeli, tj. rec smo vec videli
|
||
|
tabela[rec] += 1
|
||
|
|
||
|
#print(tabela) # mozemo ispisati celu tabelu
|
||
|
|
||
|
print("Romeo se pominje", tabela["Romeo"], "puta")
|
||
|
print("Julija se pominje", tabela["Juliet"], "puta")
|
||
|
if tabela["Romeo"]>tabela["Juliet"]:
|
||
|
print("Romeo se pominje vise puta od Julije")
|
||
|
else:
|
||
|
print("Julija se pominje vise puta od Romea")
|
||
|
|
||
|
# mozemo i da sortiramo reci da bi videli koje se najvise ponavljaju (ovo je malo komplikovaniji primer)
|
||
|
|
||
|
sortirane_reci = sorted(tabela.items(), key=lambda x: x[1], reverse=True)
|
||
|
|
||
|
# ispismo 20 najucestalijih reci
|
||
|
for i in range(20):
|
||
|
print(sortirane_reci[i][0],"=>", sortirane_reci[i][1])
|
||
|
|
||
|
|
||
|
|
||
|
|