Проблема оператор цепочки . bird_guess in bird_names==False
оценивается как:
(bird_guess in bird_names) and (bird_names == False)
Поскольку второе выражение всегда оценивается как False
, условие никогда не выполняется. Вы можете использовать скобки, чтобы избежать проблемы:
(bird_guess in bird_names) == False
Более идиоматическим является использование специального оператора not in
:
bird_guess not in bird_names