New submission from SilentGhost <michael.mischurow+...@gmail.com>: According to docs (http://docs.python.org/3.1/reference/datamodel.html#object.__bool__) __bool__ can return 1 or 0 instead of True or False. However, when I ran the following code:
Python 3.1 (r31:73574, Jun 26 2009, 20:21:35) [MSC v.1500 32 bit (Intel)] on win32 >>> class Spam(): def __bool__(self): return 1 >>> if Spam(): print('ham') I got the following error: Traceback (most recent call last): File "<pyshell#72>", line 1, in <module> if Spam(): TypeError: __bool__ should return bool or int, returned int So, do I misunderstand the docs or is it an error in them? ---------- assignee: georg.brandl components: Documentation, Interpreter Core messages: 90181 nosy: SilentGhost, georg.brandl severity: normal status: open title: TypeError: __bool__ should return bool or int, returned int type: behavior versions: Python 3.1 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue6428> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com