Describe your issue in detail here.
hellow world!!
i need help whit htis code i have done wath sthet in description:
Next, modify your encryption and decryption variables by calling encrypt and decrypt , respectively, in place of vigenere .
i have done it but from some reason when i tap decrypt it’s make a eror
i have troaie the text vigenere from the return with the (enrypt, decrypt )to make dose not work
Your code so far
text = 'Hello Zaira!'
custom_key = 'python'
def vigenere(message, key, direction=1):
key_index = 0
alphabet = 'abcdefghijklmnopqrstuvwxyz'
final_message = ''
for char in message.lower():
# Append any non-letter character to the message
if not char.isalpha():
final_message += char
else:
# Find the right key character to encode/decode
key_char = key[key_index % len(key)]
key_index += 1
# Define the offset and the encrypted/decrypted letter
offset = alphabet.index(key_char)
index = alphabet.find(char)
new_index = (index + offset*direction) % len(alphabet)
final_message += alphabet[new_index]
return final_message
# User Editable Region
def encrypt(message, key):
return vigenere(message, key)
def decrypt(message, key):
return vigenere(message, key, -1)
encryption = encrypt(text, custom_key)
print(encryption)
decryption = decrypt(encryption, custom_key, -1)
print(decryption)
# User Editable Region
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36
Challenge Information:
Learn String Manipulation by Building a Cipher - Step 85
You appear to have created this post without editing the template. Please edit your post to Tell us what’s happening in your own words.
Learning to describe problems is hard, but it is an important part of learning how to code.
Also, the more you say, the more we can help!
i solve it was a mistake von program
decryption = decrypt(encryption, custom_key, -1)
then i have -1end (,) deleted und its work my question is whi the programhe didn’t tell me to remove this a few lessons before and he didn’t even guide me, maybe it’s a small bug that can be fixed
the -1 was useful when you were calling vigenere, see that vigenere has three parameters. It is only this step that you are calling decrypt, and decrypt takes only 2 arguments (it has only 2 parameters)
@MrSanyi When you delete your comments like this it makes it hard for others to follow the flow of conversation if they are trying to figure out the same problem.
It’s ok to be wrong sometimes, you are learning. There’s no penalty, you don’t lose any points. Don’t worry about it. Generally, I would say it’s actually better to just admit a mistake instead of trying to hide it. You can learn from it and others can learn from it as well.
If you really want to contribute to the forum and learn, take some time to research the question and make sure you fully understand it. Don’t rush to answer. You will learn more and you will be better at helping others.
@pkdvalis I really apologize because i removed the comment.
I have seen that i was wrong and try to hide it.
But, You have told me that mistake is good and it makes us to learn something.
I will try to decrease my rushing behavior as much as i can.