print("What's your name?")
name = input('Answer: ')
while False:
    if name == 'joshua':
        print("you're right")
    else:
        print("you're wrong")
input('the end\n')
 
    
    - 48,888
- 12
- 60
- 101
 
    
    - 55
- 1
- 4
- 
                    set a boolean flag and make that the condition of your while loop. i.e `incorrectAnswer = true; while incorrectAnswer: if name == 'joshua': incorrectAnswer = false` – Jeremy Fisher Feb 20 '20 at 19:16
- 
                    3`while False:` will never execute at all. – Barmar Feb 20 '20 at 19:17
- 
                    Note: Avoid infinite loops. Add another condition to exit the loop. In this case maybe if guesses > 20. – Brian Feb 20 '20 at 19:27
5 Answers
- With while False:, you never get inside the loop at all
- Your problem with the loop body isn't getting back to the top; it is that you haven't specified a way to exit the loop.
 
    
    - 48,888
- 12
- 60
- 101
You can set a boolean variable outside of the loop which will run basically forever until the answer is correct. You need to ask for input again in each iteration:
print("What's your name?")
unanswered = True
while unanswered:
    name = input('Answer: ')
    if name == 'joshua':
        unanswered = False
        print("you're right")
    else:
        print("you're wrong")
input('the end\n')
 
    
    - 12,099
- 6
- 34
- 51
Use while True: to loop infinitely, then break out of the loop when the answer is correct.
while True:
    print("What's your name?")
    name = input('Answer: ')
    if name == 'joshua':
        print("you're right")
        break
    else:
        print("you're wrong")
 
    
    - 741,623
- 53
- 500
- 612
Use break and continue inside your while loop. Control flow
while True:
    if name != "Joshua":
        continue
    break
 
    
    - 600
- 4
- 16
That loop will never enter because its condition is always False. You'll need an extra variable to keep track. Start off by setting correct = False above the loop and changing your loop condition to not correct. Then, if they are correct, set correct = False.
You could also break on a right answer with True for the loop condition, but since I'm guessing you are new to programming, learning more traditional control flow would probably be better.
 
    
    - 2,422
- 2
- 16
- 23