Finde den Fehler in meinem Skript nicht
Verfasst: Montag 13. April 2009, 10:29
Hallo liebe Python-Programmierer,
da ich schon in mehreren Fällen hier super Hilfe bekommen habe möchte ich noch mal um etwas Hilfe beten.
Ich bin eigentlich noch ein ziemlicher Anfänger und habe einen kleinen Code geschrieben, der eigentlich .txt Dateien nach dem Caeser-Verfahren einfach verschlüsseln und in einer .caes(wegen CAESar) Datei den Codierten text abspeichern soll. Der Coder sieht so aus :
So natürlich passier erstma nichts weil ich ja nur Funktionen definiert habe . Aber wenn ich nun den Befehl: codiere_datei("C:\\py4kids\\kap12\\nocheintext","q") eingebe kommt folgende Meldung:
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
codiere_datei("C:\\py4kids\\kap12\\nocheintext","q")
File "C:\py4kids\kap12\coden.py", line 22, in codiere_datei
neu= codiere(text.lower(), caesercode(char))
File "C:\py4kids\kap12\coden.py", line 13, in codiere
neu = codedict
KeyError: ' '
Kann jemand den Fehler in meinem Skript finden??
Wenn ja bitte ich darum mir zu zeigen wo und mir zu erklären warum.
Ich bedanke mich schon im Voraus für die Hilfe
MfG
Dango
da ich schon in mehreren Fällen hier super Hilfe bekommen habe möchte ich noch mal um etwas Hilfe beten.
Ich bin eigentlich noch ein ziemlicher Anfänger und habe einen kleinen Code geschrieben, der eigentlich .txt Dateien nach dem Caeser-Verfahren einfach verschlüsseln und in einer .caes(wegen CAESar) Datei den Codierten text abspeichern soll. Der Coder sieht so aus :
Code: Alles auswählen
def caesercode(buchstabe):
klar="abcdefghijklmnopqrstuvwxyz"
i=klar.index(buchstabe)
geheim=klar[i:] + klar[:i]
code={}
for j in range(len(klar)):
code[klar[j]]=geheim[j]
return code
def codiere(text, codedict):
geheim=""
for b in text:
if b in text:
neu = codedict[b]
else:
neu = b
geheim = geheim + neu
return geheim
def codiere_datei(dateiname, char):
f=open(dateiname+".txt")
text=f.read()
f.close()
neu= codiere(text.lower(), caesercode(char))
g=file(dateiname+".caes","w")
g.write(neu)
g.close
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
codiere_datei("C:\\py4kids\\kap12\\nocheintext","q")
File "C:\py4kids\kap12\coden.py", line 22, in codiere_datei
neu= codiere(text.lower(), caesercode(char))
File "C:\py4kids\kap12\coden.py", line 13, in codiere
neu = codedict
KeyError: ' '
Kann jemand den Fehler in meinem Skript finden??
Wenn ja bitte ich darum mir zu zeigen wo und mir zu erklären warum.
Ich bedanke mich schon im Voraus für die Hilfe
MfG
Dango