New submission from Tim Peters <[email protected]>:
Here under Python 3.8.1 on 64-bit Windows:
>>> import decimal
>>> c = decimal.getcontext()
>>> c.prec = decimal.MAX_PREC
>>> i = decimal.Decimal(4)
>>> i / 2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
MemoryError
Of course the result is exactly 2. Which I have enough RAM to hold ;-)
The implicit conversion is irrelevant:
>>> i / decimal.Decimal(2)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
MemoryError
Floor division instead works fine:
>>> i // 2
Decimal('2')
----------
components: Library (Lib)
messages: 361536
nosy: tim.peters
priority: normal
severity: normal
status: open
title: Surprising MemoryError in `decimal` with MAX_PREC
versions: Python 3.8, Python 3.9
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue39576>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com