Python programmieren?
Schreibe ein Programm in Python, welches dem Benutzer nach Eingabe eines Buchstaben als Klartext den, verschlüsselten" Buchstaben ausgibt.
Das habe ich hinbekommen:
Wie löse ich jetzt diese Aufgabe?
Erweitere das Programm aus a. so, dass nach Eingabe eines Klartextes der Geheimtext ausgegeben wird.
3 Antworten
Du kannst noch eine for-Schleife oben drüber über die packen, die momentan den klar Buchstaben umwandelt und zwar "for buchstabe_klar in satz_klar"
Anstatt dann buchstabe_geheim zu setzen, nutzt du einen String (zB satz_geheim) und fügst den gefundenen Buchstaben dazu. Also:
satz_klar = input(...)
satz_geheim = "" # das wird der umgewandelte Satz
# jetzt gehen wir durch jeden Buchstaben im Satz
for buchstabe_klar in satz_klar:
# und machen das gleiche wie im Beispiel
for i in range(0, len(alphabet_klar)):
if buchstabe_klar == alphabet_klar[i]:
# nur dass wir hier jeweils den geheim buchstaben
# zum Satz hinzufügen
satz_geheim += alphabet_geheim[i]
break # wenn es ein A ist, kanns kein Z sein ;)
print(satz_geheim)
Kann sein dass Syntax Fehler drin sind ich benutz Python nie.. Aber von der Idee wäre das am nächsten an dem wo du momentan bist :)
die Anführungszeichen sind ein String (also text). Nur leere "" sind ein text ohne Inhalt - der Inhalt kommt dann in der Zeile
satz_geheim += alphabet_geheim[i]
stück für stück dazu. der "+=" operator fügt das was rechts davon steht zu dem links davon hinzu. zB
a = ""
a += "hallo" # a ist jetzt "hallo"
a += " welt!" # a ist jetzt "hallo welt!"
Also kommt nichts in die Anführungszeichen rein? Weil sind die leer, klappt es nicht
Ja genau die müssen leer sein. Du kannst gerne deinen ganzen Code hier einmal rein kopieren :)
Hab das Problem gefunden, trotzdem Dankeschön :))
Ich würde das so mit der join-Funktion machen:
text_klar = input()
dict_klar_geheim = dict(zip(alphabet_klar, alphabet_geheim))
text_geheim = ''.join([dict_klar_geheim [c] for c in text_klar])
print(text_geheim)
Ich kenne die join Funktion garnicht... gibt es auch andere Möglichkeiten?
Das wäre ein Ansatz:
text_geheim = ""
for buchtabe_klar in text_klar:
...
text_geheim += buchstabe_geheim
Ersetze dabei "..." durch das, was du bereits hast, wo der Klarbuchstaben in den Geheimbuchstaben verwandelt wird.
Das gleiche nochmal, nur eben _geheim einlesen und _klar bestimmen und aufrufen
An welcher Stelle kann ich das einfügen? Ich hab davor so ähnlich versucht aber es kam eine Fehlermeldung...
Ich möchte das nicht alles schreiben, kannst Du es mal reinkopieren bitte ?
Vielen Dank! Was kommt aber in die " " in der 2. Zeile satz_geheim ?