Learn String Manipulation by Building a Cipher - Step 44

Tell us what’s happening:

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

for char in text.lower():
if char == ’ ':
encrypted_text += char
else:
print(‘char:’, char, ‘encrypted text:’, encrypted_text)

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:
    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/123.0.0.0 Safari/537.36

Challenge Information:

Learn String Manipulation by Building a Cipher - Step 44

Please 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!

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

May I suggest you take a few steps back to understand Python indentation?
The else needs to be at the same level than if.
Once you can comfortable answer why that’s the case, you’ll be in a better position for success.

I do not understand what should I do in this case

The request box says as follows:

Step 44
A conditional statement can also have an else clause. This clause can be added to the end of an if statement to execute alternative code if the condition is of the if statement is false:

if x != 0:
    print(x)
else:
    print('x = 0')

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.

The first part it introduces what a else clause is and where it can be used. Then it follows by giving you an example.

The task is to write an else after encrypted_text += char (it assumes you know already how to indent properly as per the example) and to indent all the subsequent lines except the print()

Originally, you are at this point within the code

    if char == ' ':
        encrypted_text += char
    index = alphabet.find(char)
    new_index = index + shift
    encrypted_text += alphabet[new_index]
    print('char:', char, 'encrypted text:', encrypted_text)

And you have to convert that into something that resembles as

if ...:
    ...
else:
    # indent this line
    # indent this line
    # indent this line
print("Hello! I am the print, do not touch me!")