[issue44547] fraction.Fraction does not implement __int__.

Michael Amrhein report at bugs.python.org
Thu Jul 1 15:52:28 EDT 2021


New submission from Michael Amrhein <michael at adrhinum.de>:

While int, float, complex and Decimal implement __int__, Fraction does not. Thus, checking for typing.SupportsInt for fractions fails, although int(<fraction>) succeeds, because Fraction implements __trunc__.
This looks inconsistent.
Easiest fix seems to be: Fraction.__int__ = Fraction.__trunc__

----------
components: Library (Lib)
messages: 396827
nosy: mamrhein
priority: normal
severity: normal
status: open
title: fraction.Fraction does not implement __int__.
type: behavior
versions: Python 3.10, Python 3.11, Python 3.6, Python 3.7, Python 3.8, Python 3.9

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


More information about the Python-bugs-list mailing list