Learn String Manipulation by Building a Cipher - Step 37

Tell us what’s happening:

text = ‘Hello World’
shift = 3
alphabet = ‘abcdefghijklmnopqrstuvwxyz’
encrypted_text = ‘’

for char in text.lower():
index = alphabet.find(char)
new_index = index + shift
encrypted_text = alphabet[new_index]
print(‘char:’, char, ‘encrypted_text:’, encrypted_text)

Can anyone check and tell me why this code is not getting passed?

Your code so far


# User Editable Region

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

for char in text.lower():
    index = alphabet.find(char)    
    new_index = index + shift
    encrypted_text = alphabet[new_index]
    print('char:', char, '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/136.0.0.0 Safari/537.36

Challenge Information:

Learn String Manipulation by Building a Cipher - Step 37

1 Like

Found the bug!

In Step 37 read the instructions closely.
image
The image instructs you to code (on line 12):

print('char:', char, 'encrypted text:',  encrypted_text)

But you coded this:

print('char:', char, 'encrypted_text:', encrypted_text)

Reasoning: It asks you to write the string ‘encrypted text:’, not ‘encrypted_text:’ according to the instruction.

Think about this, at the end of the for loop, when the print statement runs, is the string when printed exactly as intended ? Could there be a typo ? Check the instructions again. Good luck!