pickle/mpmath/python - травление с разными бэкэндами

https://code.google.com/p/mpmath/issues/detail?id=239

Я столкнулся с проблемой извлечения данных mpmath с помощью Python Backend и попытался получить их с помощью GMP Backend. Это приводит к ошибке:

ValueError: invalid digits

Это в libmpf.py и это когда это называется MPZ(man, 16)

по ссылке, если заменить MPZ с long это больше не дает ошибку. Есть ли у кого-нибудь понимание этого. Кажется, это был взлом, который я не решаюсь делать.

Как лучше всего решить мою проблему?

благодарю вас

1 ответ

Решение

Проблема в некоторой степени сформулирована в вопросе из-за gmpy backend против python backend при хранении комплексных чисел. Дополнительная информация здесь:

http://docs.sympy.org/dev/modules/mpmath/setup.html

Теперь бэкэнд по умолчанию в ipython в моей настройке был "gmpy", и согласно веб-сайту выше, чтобы отключить режим gmpy по умолчанию, вам нужно установить переменную MPMATH_NOGMPY.

В линуксе я делал из командной строки

export MPMATH_NOGMPY=1

Если вы хотите, чтобы это было постоянным, добавьте эту строку в ваш файл ~/.profile. Я не очень разбираюсь в переменных среды, хотя, возможно, есть лучшие способы сделать это.

Другие вопросы по тегам