Learn String Manipulation by Building a Cipher - Step 41

Tell us what’s happening:

What is the correct logic for if statement in this code? I’ve tried a few of them but still can’t find the right one. I’ve tried:
char = ’ ':
char != ’ ':
char <= 0:
c = ’ ':
c == ’ ':
space == ’ ':

Your code so far


# User Editable Region

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

for char in text.lower():
if  char == ' ':
    print('space!')    
    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/127.0.0.0 Safari/537.36

Challenge Information:

Learn String Manipulation by Building a Cipher - Step 41

You need to know the difference between an assignment (=) and a comparison (==). It’s totally different.

c = ' '

This line should not be here, nothing like this is mentioned in the instructions.

What you currently have in your code is correct, but the indentation is wrong. You should indent after every for or if statement, to declare what’s part of the loop and what’s part of the if.

code 
code
for this in that:
    if this == other:
        code
        code
    code
    code

code
code

The levels of indentation are the only thing that signifies what is in the for loop and what’s part of the if.

Yes, I fixed my indentation and it works.

1 Like