gmpy2 qdiv () возвращает mpq, где возможно mpz - PullRequest
0 голосов
/ 14 ноября 2018

Интересно, если я не получу что-то здесь ... Почему qdiv(8,2) возвращает mpq вместо mpz?

Смотрите здесь:

Python 3.5.2 (default, Nov 23 2017, 16:37:01)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from gmpy2 import qdiv
>>> help(qdiv)
Help on built-in function qdiv in module gmpy2:

qdiv(...)
    qdiv(x[, y=1]) -> number

    Return x/y as 'mpz' if possible, or as 'mpq' if x is not exactly
    divisible by y.
>>> qdiv(8,2)
mpq(4,1)
>>> qdiv(4,1)
mpz(4)

Я думал, что вся идея состояла в том, чтобы вернуть mpz, если это возможно?

1 Ответ

0 голосов
/ 14 ноября 2018

Я считаю, что это ошибка, которая была исправлена ​​в версии 2.0.5.Ваш пример работает с 2.0.8.Какую версию gmpy2 вы используете?

Python 3.6.6 (default, Sep 12 2018, 18:26:19) 
[GCC 8.0.1 20180414 (experimental) [trunk revision 259383]] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import gmpy2
>>> gmpy2.qdiv(8,2)
mpz(4)
>>> gmpy2.qdiv(4,1)
mpz(4)
>>> gmpy2.version()
'2.0.8'
>>> 

Edit

Это ошибка в альфа-версии gmpy2 2.1.0.В главном стволе было зафиксировано исправление в главном хранилище - gmpy2 .Он будет включен в версию 2.1.0a5.

...