Привет, я пытаюсь зашифровать некоторый текст с помощью функции шифрования Цезаря в python, но ошибка говорит, что зашифрованный текст не определен.
alphabet = "abcdefghijklmnopqrstuvwxyz"
def encrypt(plaintext):
ciphertext = ""
for i in range(0, len(plaintext)):
for j in range(0, len(alphabet)):
if plaintext[i]==alphabet[j]:
ciphertext+=alphabet[(j+3)%26]
print("Encrypted Message:", ciphertext)
Вам просто нужно переместить его вперед на отступ, чтобы быть в функции
def encrypt(plaintext):
ciphertext = ""
for i in range(0, len(plaintext)):
for j in range(0, len(alphabet)):
if plaintext[i] == alphabet[j]:
ciphertext += alphabet[(j+3) % 26]
print("Encrypted Message:", ciphertext)
Или вы можете вернуть значение и распечатать его:
def encrypt(plaintext):
ciphertext = ""
for i in range(0, len(plaintext)):
for j in range(0, len(alphabet)):
if plaintext[i] == alphabet[j]:
ciphertext += alphabet[(j+3) % 26]
return "Encrypted Message: " + ciphertext
print(encrypt("xyza"))
так что на самом деле в коде нет ничего плохого. попробуйте вызвать функцию со строкой в качестве аргумента. Например:
encrypt("CSE1202")
так что на самом деле в коде нет ничего плохого. попробуйте вызвать функцию со строкой в качестве аргумента. Например:
зашифровать("CSE1202")
естественно, вы можете заменить CSE1202 на что-нибудь другое, и все будет работать.
#кстати, если ты еще не понял намека, я одноклассник