wort_zaehler.py
#
# wort_zaehler.py: zählt die Häufigkeit
# der Worte in einer Datei
#
from string import split
#Liest eine Datei
def datei_lesen (datei):
in_file = open(datei,"r")
# Datei zum Lesen (r: read) öffnen
text = in_file.read() # Datei lesen
in_file.close() # Datei schliessen
return text # und Inhalt zurückgeben
# Hauptprogramm:
pfad = "g:/python/prg/"
dateiname="china.txt"
print '\n\nDer offizielle Python-Wort-Zähler'
print 'Lese die Datei: ' + dateiname
text = datei_lesen(pfad+dateiname)
textliste = split(text) # text in liste
neud = {} # das Wörterbuch
for wort in textliste:
# Zeichen am Ende eines Wortes rauswerfen
if wort[len(wort)-1] in [',','!','.','?',':']:
wort = wort[:len(wort)-1]
#falls das '#'-Zeichen (bzw.' oder ")
#am Anfang eines Wortes 'klebt', entfernen
if len(wort) > 1 and wort[0] in ['#','"',"'"]:
wort = wort[1:len(wort)]
if not (neud.has_key(wort)):
neud[wort] = 1 # neuen Eintrag hinzufügen
else:
neud[wort] = neud[wort] + 1 # Häufigkeit erhöhen
# und ausgeben . . .
eintraege = neud.items() # Wörterbuch in Liste
for eintrag in eintraege:
print eintrag[0] + ':',eintrag[1]
print '\nFertig . . . (wort_zaehler.py)'
→ Fenster schließen