[Python-Dev] ACCEPTED: PEP 285
Neal Norwitz
neal@metaslash.com
Wed, 03 Apr 2002 18:13:29 -0500
Guido van Rossum wrote:
>
> Despite the negative feedback, I've decided to accept the PEP. The
> most important perceived problem is that newbies tend to write
>
> if x == True: ...
>
> where they should write
>
> if x: ...
>
> I believe this problem should be solved by education (the Zen master
> hits the student on the head with a stick, and the student gets
> enlightenment) rather than by holding back what I believe will be a
> useful feature. You can expect the bool type in Python 2.3; it will
> be in CVS tonight.
And the warnings have already been added to pychecker.
I know I'm going to wish I never said this, but ...
If you find REAL problems with code that breaks, let me know.
I will try to address problems that may arise.
This code:
True = 1
False = 0
def test(a):
if a is True: print 'True'
if a == False: print 'False'
generates these warnings:
test.py:2: Should not assign to True, it is (or will be) a builtin
test.py:3: Should not assign to False, it is (or will be) a builtin
test.py:6: Comparisions with True are not necessary
test.py:7: Comparisions with False are not necessary
Neal