Почему значение bool изменяется дважды с одним входом в python? - PullRequest
0 голосов
/ 16 апреля 2020

Если вы введете e, находясь в то время как l oop, я хочу, чтобы переключатель был Ложным и оставался ложным. Когда вы снова вводите e в течение второго отдельного времени, пока l oop, я хочу, чтобы оно было верным и оставалось верным. Тем не менее, он просто переключает его на false на один момент, затем он переключается обратно на true и остается истинным. Что я делаю не так?

switch = True
x = 1 
if x == 1: 
  while x == 1: 
    command = input('')   
    if command == 'e':
        switch = False
        print(switch)
    if not switch:
        if command == 'e':
            switch = True
            print(switch)

1 Ответ

0 голосов
/ 16 апреля 2020

Если вы хотите, чтобы switch переключался вперед и назад, кратчайший путь выглядит примерно так:

switch = True
while True:
    print(switch)
    command = input()
    if command == 'e':
        switch = not switch
...