Форум сайта python.su
помогите с алгоритмом, к примеру вводишь слово “Привет” и вводишь ключ размером равным длине вводимого слова, и по нажатию кнопки положение букв в слове поменяется в соответствии с положением цифр в ключе.
к примеру ввели:
Слово: Привет
Ключ: 642513
в итоге: тврепи
и так же наоборот
Офлайн
word = "Привет" shifr = "642513" def mask_data(in_word, in_key): result = "" wordlist = [x.lower() for x in in_word] if len(in_word) == len(in_key): for y in in_key: try: key = int(y) if (key - 1) >= len(in_word) or (key - 1) < 0: print(f"The key {key} is wrong") else: result += wordlist[key - 1] except expression as identifier: print("Shifr has error chars") else: print("The key and word length isnt matched") print(f"Rsult: {result}") mask_data(word, shifr)
Отредактировано ZerG (Сен. 19, 2022 17:41:43)
Офлайн
>>> def encrypt_text(text, key): ... if len(text) != len(key): ... raise ValueError('incorrect length of key') ... out = ''.join(text[i-1] for i in map(int, key)) ... return out ... >>> encrypt_text('Привет', '642513') 'твреПи' >>> >>> encrypt_text('Привет', '64251') Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 3, in encrypt_text ValueError: incorrect length of key >>>
Отредактировано py.user.next (Сен. 19, 2022 21:20:02)
Офлайн