Wie würde ich ein einfaches Verschlüsselungs- / Entschlüsselungsprogramm machen? [abgeschlossen]

Ich würde gerne wissen (wie die Frage sagt), wie man ein einfaches Verschlüsselungs- und Entschlüsselungsprogramm macht.

letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' encryption_code = 'LFWOAYUISVKMNXPBDCRJTQEGHZ'

  • Unertest (manchmal) scheitert, weil Gleitkomma-Ungenauigkeit
  • Der Unterstrich der Python
  • Wie man zufällig Zeilen eines numpy Arrays verschiebt
  • Ein einfaches Python-Einsatzproblem - eine ganze Welt des Schmerzes
  • Wie man eine Drittanbieter-Scrapy-Middleware hinzufügt
  • SimpleJSON und NumPy Array
  • Ich möchte, dass der letzte Abschnitt das ist, was die Buchstaben des Alphabets verschlüsselt sind und ob der Benutzer die Entschlüsselung wählt, ich möchte, dass er umgekehrt oder wieder in das Alphabet-Formular zurückgesetzt wird.

    Ist das zu kompliziert, weil von den Beispielen, die ich gesehen habe, alles, was sie zu tun scheinen, das Alphabet 3 oder 4 Räume verschieben und das als Verschlüsselungscode verwenden.

  • Linux: Berechnen Sie einen einzelnen Hash für einen bestimmten Ordner und Inhalt?
  • OpenCV wird nicht von MacBook Pro iSight erfasst
  • Chain-Calling-Eltern-Konstruktoren in Python [Duplikat]
  • Führen Sie Code in Python-Skript auf Shutdown-Signal
  • Zusammenführen von XML-Dateien mit verschachtelten Elementen ohne externe Bibliotheken
  • Dynamisches Update im iPython Notebook
  • 2 Solutions collect form web for “Wie würde ich ein einfaches Verschlüsselungs- / Entschlüsselungsprogramm machen? [abgeschlossen]”

    Verwenden Sie zwei Dicts, um die Mapping zu machen, eine von Buchstaben zu encryption_code und umgekehrt zu entschlüsseln:

     letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' encryption_code = 'LFWOAYUISVKMNXPBDCRJTQEGHZ' enc = dict(zip(letters,encryption_code)) dec = dict(zip(encryption_code, letters)) s = "HELLO WORLD" encr = "".join([enc.get(ch, ch) for ch in s]) decr = "".join([dec.get(ch, ch) for ch in encr]) print(encr) print(decr) 

    Ausgabe:

     IAMMP EPCMO HELLO WORLD 

    Mit Ihrer Methode muss Ihre Eingabe in Großbuchstaben sein und der Benutzer ist auf AZ beschränkt, damit die Buchstaben verschlüsselt werden können, wenn Sie anderen Zeichen erlauben möchten, fügen Sie einfach die Mapping zu den Dicts hinzu.

     letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' encryption_code = 'LFWOAYUISVKMNXPBDCRJTQEGHZ' letters += letters.lower() encryption_code += encryption_code.lower() enc = dict(zip(letters,encryption_code)) dec = dict(zip(encryption_code, letters)) s = "HELLO world" encr = "".join([enc.get(ch, ch) for ch in s]) decr = "".join([dec.get(ch, ch) for ch in encr]) print(encr) print(decr) 

    Ausgabe:

     IAMMP epcmo HELLO world 

    Alle Zeichen, die nicht in Briefen sind, sind die gleichen in encr und decr dh:

      s = "HELLO world!#}%" IAMMP epcmo!#}% # encr HELLO world!#}% # decr 

    Sie erstellen einen Encoder und einen Decoder:

     enc = str.maketrans(letters, encryption_code) dec = str.maketrans(encryption_code, letters) 

    Und benutze sie

     encr = 'HELLO WORLD'.translate(enc) decr = encr.translate(dec) 
    Python ist die beste Programmiersprache der Welt.