Learn String Manipulation by Building a Cipher - Step 44

Tell us what’s happening:

It wants me to: As you can see in your output, when the loop iterations reach the space, a space is added to the encrypted string. Then the code outside the if block executes and a c is added to the encrypted string.

To fix it, add an else clause after encrypted_text += char and indent all the subsequent lines of code except the print() call.

But I don’t know why it’s not working :frowning:

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: 
        char != ' ':
    print()
    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 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15

Challenge Information:

Learn String Manipulation by Building a Cipher - Step 44

Welcome to the forum @cap209

  1. The char is part of the if statement.
    The print call was not asked for in the instructions.
    Please remove both of these lines from the else statement.

  2. Remove the space after colon for the else statement.

  3. Indent the code after the else statement, except the print call

Happy coding

1 Like

Had the same issue for just having a space after the colon on the else statement.

1 Like

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.