diff Objects/dictobject.c @ 22785:aa8d59823add legacy-trunk

Add the 'bool' type and its values 'False' and 'True', as described in PEP 285. Everything described in the PEP is here, and there is even some documentation. I had to fix 12 unit tests; all but one of these were printing Boolean outcomes that changed from 0/1 to False/True. (The exception is test_unicode.py, which did a type(x) == type(y) style comparison. I could've fixed that with a single line using issubtype(x, type(y)), but instead chose to be explicit about those places where a bool is expected. Still to do: perhaps more documentation; change standard library modules to return False/True from predicates.
author Guido van Rossum <guido@python.org>
date Wed, 03 Apr 2002 22:41:51 +0000
parents f3a416b178c4
children 699cc139d2d2
line wrap: on
line diff
--- a/Objects/dictobject.c	Wed Apr 03 21:52:10 2002 +0000
+++ b/Objects/dictobject.c	Wed Apr 03 22:41:51 2002 +0000
@@ -1429,7 +1429,7 @@
 			return NULL;
 	}
 	ok = (mp->ma_lookup)(mp, key, hash)->me_value != NULL;
-	return PyInt_FromLong(ok);
+	return PyBool_FromLong(ok);
 }
 
 static PyObject *