Verschlüsselung Caesar-Code mit Python?
Hello zusammen
Wir müssen in Informatik einen Code auf Python programmieren, der uns einen Kryptotext mit Caesar verschlüsselt. Zum starten haben wir nur diese zwei Linien bekommen:
def encryptCAESAR ( klartext, key ):
kryptotext = ""
Kann mir jemand helfen? Thankyouu
Ich verstehe die Signatur der Funktion nicht so ganz:
Du sprichst von Entschlüsseln und übergibst der Funktion den Klartext?
ups, habe es vertauscht. Wir müssen es verschlüsseln.
2 Antworten
Hier mein Vorschlag:
Erlaubt sind die Zeichen des Alphabets (ohne Umlaute) sowie Leerzeichen. Der im Klartext vorliegende Text wird zunächst in Kleinbuchstaben umgewandelt und anschließend um die mit key angegebenen Positionen verschoben.
def encrypt_caesar(text, key):
alphabet = 'abcdefghijklmnopqrstuvwxyz'
encrypted = ''
for character in text.lower():
encrypted += alphabet[(alphabet.find(character) + key) % 26] if character != ' ' else ' '
return encrypted
def caesar(text,key):
L=['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
L2=L+L
Crypt=""
for I in text:
if I in L :
C=C+L2[L.index(I)+key]
else:
C=C+I
return (Crypt)
Guet frage lässt mich das nicht als Code schreiben :(