Python If Statement Evaluation With Multiple Values
I'm not exactly sure why but when I execute this section of code nothing happens. while (True) : choice = str(input('Do you want to draw a spirograph? (Y/N) ')) if choic
Solution 1:
It won't work because the 'N'
literal always evaluates to True
within your if
statement.
Your if
condition currently stands as if choice == 'n' or 'N' :
, which is equivalent to if (choice == 'n') or ('N')
, which will always evaluate to True
irrespective of the value of variable choice
, since the literal 'N'
always evaluates to True
.
Instead, use one of the following
if choice == 'n' or choice == 'N' :
if choice in 'nN' :
if choice in ('n', 'N') :
The same holds for your elif
block as well. You can read more about Truth Value testing here.
Solution 2:
This expression doesn't do what you want:
choice == 'n' or 'N'
It is interpretted as this:
(choice == 'n') or 'N'
You might want to try this instead:
choice in'nN'
Post a Comment for "Python If Statement Evaluation With Multiple Values"