Program Error Help - Python 3.1

Cameron Simpson cs at
Fri Mar 31 19:42:48 EDT 2017

On 31Mar2017 16:12, 2019.cavanaughc at <2019.cavanaughc at> wrote:
>Hello I've been coding for about 1 or 2 months and i have encountered a problem with a 'while' statement. It keeps looping even when the statement is false, here is the code. The code is for a game that I'm making that resembles the Oregon Trial.

Obviously the statement (well, "test") isn't false! Let's look:

>answer8 = ""
>while answer8 != ("1") or answer8 != ("2"):

Answer8 cannot be both "1" and also "2". Therefore, it will always _not_ be 
equal to at least one of "1" and "2". Therefore this test is always true.

You might better write this:

  while answer8 not in ("1", "2"):


  while not( answer8 == "1" or answer8 == "2" ):

BTW, you need to decide whther you're working in strings or integers. input() 
in Python 3 returns a string. If you want to test against strings, fine.

However, if you want to test against numbers you need to convert the string to 
a number:

  answer8n = int(answer8)

and then test against answer8n.

Cameron Simpson <cs at>

More information about the Python-list mailing list