PythonCharmers/python-future
在 GitHub 查看futurize `__bool__` not implemented for subclasses of dict
Open
#282 创建于 2017年5月5日
0.20bughelp wanted
仓库指标
- Star
- (1,172 star)
- PR 合并指标
- (30 天内没有已合并 PR)
描述
If a run futurize on python 2 code containing a subclass of the built in dict, e.g.
class A(dict):
__nonzero__(self):
return False
it is translated to
class A(dict):
__bool__(self):
return False
However, the __bool__ method is not called in python 2. Seems some other kind of trickery is needed.
For now I'm working around the issue by doing
class A(dict):
__bool__(self):
return False
if sys.version_info[0] == 2:
__nonzero__ = __bool__