f=open('new.txt')
var=f.read()
var=var.lower()
var = var.replace(';','')
var = var.replace(',','')
var = var.replace('.','')
x=var.split()
dict={}
dictList=[]
dict2={}
for i in xrange(0,len(x)-1):
if dict.items():
for k in dict.items():
if x[i] not in k:
dict[x[i]]=dict2
dict2[x[i+1]]=1
else:
if dict[x[i]].keys():
if x[i+1] in dict[x[i]].keys():
dict[x[i]][x[i+1]]+=1
else:
dict[x[i]][x[i+1]]=1
else:
dict[x[i]][x[i+1]]=1
else:
dict[x[i]]=dict2
dict2[x[i+1]]=1
print dict
Dieser Code muss Bigramm-Zähler für jedes Wort drucken. Ich bin mir ziemlich sicher, dass ich dict2 unangemessen instanziiert habe. Ich bin sicher, das ist ein naive Fehler, aber ich vermisse es irgendwie. Irgendwelche Vorschläge? :)Wo ist dieser Code falsch?
Welchen Fehler bekommen Sie? – PearsonArtPhoto
"Irgendwelche Vorschläge?" Schreiben Sie ein minimales Beispiel, das das Problem aufweist. –
Was meinst du mit "Bigryrählungen jedes Wortes drucken"? Können Sie ein Beispiel new.txt angeben und was sollte die Ausgabe sein? –