私の暗号化コードでは、次の関数で使用されているので、関数から値を返そうとしています。私は 'cipher_text'という名前が定義されていないと私に伝えて、エラーを取得し続けます。助けてください!Python関数 - 戻り値が '定義されていません'
エラー:
(7行目)
解読(cipher_text、シフト)
NameError:名 'cipher_text' が
def main():
user_input = input ("Enter string: ")
shift = int(input ("Enter a shift that is between 1 and 26: "))
while shift<1 or shift>26:
shift = input ("ERROR: Shift must be between 1 and 26: ")
encryption (user_input, shift)
decryption (cipher_text, shift)
frequency (user_input)
def frequency(user_input):
freq_char = None
for char in user_input:
charcount = user_input.count(char)
if (charcount != 0):
freq_char = char
print (freq_char)
return fre_char
def encryption(user_input, shift):
cipher_text = ''
for char in user_input: #for every character in input
if char == ' ':
cipher = char
cipher_text += cipher
else:
cipher_num = (ord(char))+(shift)%26 #using ordinal to find the number
cipher= ''
cipher = chr(cipher_num)# using chr to convert back to a letter
cipher_text += cipher
print ("The encrypted text is:",cipher_text)
return(cipher_text)
def decryption (cipher_text, shift):
decrypt_text = ''
cipher_text = ''
for char in cipher_text: #for every character in the encrpted text
decrypt_num = (ord(char))+(int(shift))%26
decrypt= ''
decrypt = chr(decrypt_num)
decrypt_text += decrypt
print("The decrypted text is:", decrypt_text)
return(decrypt_text)
main()
'decryption'が何かを返す必要があります。 @ArtjomB。 –
彼の問題を説明するのではなく、コードレビューを提供しようとしていませんでした。この場合、彼の関数はまだ何かを印刷し、彼は戻り値を使わないので、答えを複雑にするのを避けました=) – Cireo