[issue41436] BUG a simple "and" and "or"

Samran report at bugs.python.org
Wed Jul 29 22:51:59 EDT 2020


Samran <iamsamran1d at gmail.com> added the comment:

Thanks a lot. I am beginner and will try stack overflow next time. Depending on the error type. Thank you again I learned a lot.

Sent from Mail for Windows 10

From: James Corbett
Sent: Wednesday, July 29, 2020 9:57 PM
To: iamsamran1d at gmail.com
Subject: [issue41436] BUG a simple "and" and "or"

James Corbett <james.h.corbett at gmail.com> added the comment:

I think this would have been a better fit for a StackOverflow issue: https://stackoverflow.com/questions/tagged/python. Also, it's not a compilation error and it doesn't have anything to do with CPython's testing framework. 

Anyway, I don't think this is a bug. For a string `ch`, it is always true that either `ch != 'n'` or `ch != 'N'`---no string is equal to both `'N'` and `'n'`. Therefore your `while` condition will always be true and the loop will always continue.

As you already noted, your loop will terminate properly if you used `and`. You could also rewrite it as `while ch not in ('n', 'N'):` which I think is clearer.

----------
nosy: +jameshcorbett

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue41436>
_______________________________________

----------

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue41436>
_______________________________________


More information about the Python-bugs-list mailing list