Learn String Manipulation by Building a Cipher - Step 43

Tell us what’s happening:

Step 43 - I have made the corrections according to the suggested "indent the lines of code after your else clause. After many attempts and different variations of indention, I opened VS Code and as I suspected my solution was correct. You program is wrong. This makes the 3rd step wherein your program is wrong. I cannot continue to step 44, any ideas?

Your code so far


# User Editable Region

text = 'Hello World'
shift = 3
alphabet = 'abcdefghijklmnopqrstuvwxyz'
encrypted_text = ''

for char in text.lower():
    if char == ' ':
        encrypted_text += char
    else:
        index = alphabet.find(char)
        new_index = (index + shift) % len(alphabet)  # Ensure the index wraps around
        encrypted_text += alphabet[new_index]

print('Encrypted text:', encrypted_text)

# 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/131.0.0.0 Safari/537.36

Challenge Information:

Learn String Manipulation by Building a Cipher - Step 43

your last print must be in else

Hi there and welcome to our community!

There are two issues.
Firstly, your print call should be indented inside the for loop (but not the else statement).
Secondly, you have made an edit to this line, which wasn’t required:

new_index = (index + shift) % len(alphabet)  # Ensure the index wraps around

This line should be:

new_index = index + shift

Fix those two issues and your code should pass.

Thanks to both of the replies. Thank you for your input and help.

1 Like