#python #mpfr
#питон #мпфр
Вопрос:
Я воспроизводимо обнаружил, что использование функции pow gmpy2 для ее типа mpfr возвращает 0 при любом значении x
gt;gt;gt; from gmpy2 import mpfr gt;gt;gt; x = mpfr('.5') gt;gt;gt; y = mpfr('2') gt;gt;gt; print(pow(x, 2)) 0.0 -gt; should be .25 gt;gt;gt; print(pow(y, 2)) 4.0 -gt; correct
я использую неправильную функцию, или есть что-то, чего я здесь не понимаю
Комментарии:
1. сопровождающий gmpy2 здесь. Вы обнаружили ошибку. Я добавлю ответ с обновлением позже.
Ответ №1:
Вы обнаружили ошибку, которая была пропущена в наборе тестов. Недавно я добавил оптимизацию для mpfr(lt;lt;некоторые маленькие числаgt;lt;некоторые маленькие числаgt;gt;) ** lt;некоторые маленькие числаgt;gt;lt;lt;маленькое целое число Pythongt;lt;маленькое целое число Pythongt;gt;. Я определил причину и проверяю исправление.
Обходной путь состоит в том, чтобы сначала преобразовать показатель в mpz.
Я выпустил новый релиз. Пожалуйста, протестируйте версию 2.1.0rc2. Его можно установить с помощью команды:
pip установить gmpy2==2.1.0rc2
Комментарии:
1. спасибо, это первый раз, когда я действительно нахожу новую ошибку, и это не моя вина, лол