[ stone273 @ 18.10.2012. 21:18 ] @
Početnik sam, imam takav zadatak da napisem "program" koji trazi da upises recenicu i onda provjeri da li su riječi iz te recenice pravilne riječi (spisak pravilnih riječi imam ubačen u python). Pa sad ovako ja sam konto da se ta recenica prebaci u listu i onda da se rijec po rijec provjerava da li je pravilna tako sto sam unesi_recenicu pretvorio u listu ako sam to pravilno uradio ?
[ miksi @ 18.10.2012. 22:02 ] @
Recimo, ovako...

import re
import pprint

recenica = "Ovo je jedna recenica."
# moze ovako
lista = recenica.split(" ")
# a, moze i regularnim izrazom
lista=re.split(" ", recenica)
print lista

#kada uporedjujes kasnije...

for listaItem in lista:
if (nadjiRecuRecniku(listaItem)):
print "Ima je"
else:
print "Nema je"



Vodi racuna o uvlacenju koda
[ stone273 @ 18.10.2012. 23:29 ] @
Prvi dio sam uradio i dobio sam spisak riječi u rečenici. Hvala

A za drugi dio mi treba samo da ispise riječi koje nisu u riječniku (kojeg ja imam u pythonu).
I malo mi nije jasno ovo if (nadjiRecuRecniku(listaItem)): nadjiRecuRecniku

Hvala još jednom i ako znaš drugi dio odradit molio bih te da napises.

BTW Ja imam rečenicu sa kojom ću testirat program i to da znaš ako nešto znači.
[ Panta_ @ 19.10.2012. 06:24 ] @
Recimo ovako:
Code:
recenica = ['Ovo', 'je', 'bla', 'jedna', 'blabla', 'recenica']
recnik = ['Ovo', 'je', 'jedna', 'recenica.']
for rec in recenica:
    if rec not in recnik:
        print rec

bla
blabla
recenica


Ili:
Code:
import sets
set1 = sets.Set(recenica)
set2 = sets.Set(recnik)
list(set1 - set2)
['blabla', 'bla', 'recenica']
[ stone273 @ 19.10.2012. 09:15 ] @
Ovo prvo mi ne odgovara jer rijecnik imam importovan u python u txt fileu i on je pozvan.

A ovaj drugi kod javlja mi error

TypeError: unsupported operand type(s) for -: 'str' and 'list'
[ Panta_ @ 19.10.2012. 09:54 ] @
Gresku ti javlja zbog toga sto nije lista. Na primer, kada otvoris fajl:
Code:
f = open('recnik.txt', 'r').read()
recnik = f.split(' ')
for rec in recenica:
    if rec not in recnik:
        print rec
[ stone273 @ 19.10.2012. 19:14 ] @
Evo uspio sam s ovim set-ovima, hvala svima.

[Ovu poruku je menjao stone273 dana 19.10.2012. u 21:51 GMT+1]
[ stone273 @ 25.10.2012. 12:14 ] @
Code:
words= open("mte-sl.words.txt", encoding="latin2").read().lower().split()
sentence = input("Write sentence: ")
import re
words_s = re.findall("\w+", sentence.lower())
wor = set(words)
wor_2 = set(words_s)
print(wor_2 - wor)