a = "абвгдеёжзийклмнопрстуфхцчшщъыьэюяабвгдеёжзийклмнопрстуфхцчшщъыьэюя"
stringToEncrypt = input("введи сообщение: ")
stringToEncrypt = stringToEncrypt.lower
shiftAmount = int(input("введи номер от 1-33, оно будет твоим ключом. "))
encryptedString = ""
for currentCharacter in stringToEncrypt:
position = a.find(currentCharacter)
newposition = position + shiftAmount
encryptedString = encryptedString + a[newposition]
print("твое сообщение зашифровано", encryptedString)
Traceback (most recent call last):
File "C:/Users/theda/Desktop/trash/random.py", line 6, in <module>
for currentCharacter in stringToEncrypt:
TypeError: 'builtin_function_or_method' object is not iterable
stringToEncrypt = stringToEncrypt.lower
lower()
, а присваиваешь переменной stringToEncrypt
ссылку на него. Т.е. правильно будет: stringToEncrypt = stringToEncrypt.lower()
stringToEncrypt = stringToEncrypt.lower
вообще удалить, и сразу написать:stringToEncrypt = input("введи сообщение: ").lower()
a
словарь у тебя дважды повторяется? stringToEncrypt = stringToEncrypt.lower()