Как взять введенное пользователем сообщение и расшифровать или зашифровать его, используя 2 списка - PullRequest
0 голосов
/ 28 апреля 2018

Как сделать две функции. Один для шифрования и один для расшифровки сообщения и реализации его в уже используемом коде.

Пример шифрования : 'My test text is here'.upper() Вывод: UJ 8ZV8 8Z08 AV DZOZ

Расшифровать образец: 'V845X6QZO3Y6L AV 4LZV6UZ' Выход: 'STACKOVERFLOW IS AWESOME'

List1 = ("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",".",1,2,3,4,5,6,7,8,9,0)
List2 = (4,"R",5,"G","Z",3,2,"D","A","E","X","Y","U","I",6,"W",7,"O","V",8,"F","Q","L",0,"J",".","H",9,"C","B","N","S","P","M",1,"T","K")

while choice != EXIT:
    display_menu()

    choice = int(input("Enter a number between 1 and 3."))

    if choice == encrypt:
        encrypt_msg = str(input("Give me a Message to Encrypt Please"))
    elif choice == decrypt:
        result = 0
        decrypt_msg = str(input("Give me Your message to decrypt please."))

        print("Exiting...")
    else:
        Print("Error...Invalid Response")

Это два списка выше, я новичок в программировании и все еще понимаю основы, программа должна принять сообщение от пользователя и с помощью двух предоставленных списков расшифровать и зашифровать сообщение и отобразить его, я пытался найти подобные вопросы, но решения - это команды и методы, которые мы не изучали в классе, я был бы признателен за любую помощь и объяснение того, как программировать ситуацию выше.

1 Ответ

0 голосов
/ 28 апреля 2018

Чтобы «зашифровать», вы можете сделать

inp = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ.1234567890'
oup = '4R5GZ32DAEXYUI6W7OV8FQL0J.H9CBNSPM1TK'
tab = str.maketrans(inp, oup)
totranslate = 'THIS.IS.THE.STRING.TO.TRANSLATE'
totranslate.translate(tab)

str.maketrans() создает таблицу для сопоставления входных символов с соответствующими выходными символами.

Эта таблица затем используется translate() для фактического перевода.

Сделайте обратное, чтобы получить таблицу для расшифровки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...