Gmpy sqrt точность

Я хочу знать, почему этот код в Python

print gmpy.sqrt(2009)

дайте результат 44, а не 44.82186966... ​​как я хочу это сделать? Как я могу настроить функцию, чтобы показать мне десятичные числа.

Заранее спасибо.


person Aksiom    schedule 23.11.2012    source источник


Ответы (1)


Грубо говоря, потому что так было определено. Нет возможности установить этот параметр.

Изменить: @casevh верен: gmpy2.sqrt() возвращает то, что вы хотите.

person Thijs van Dien    schedule 23.11.2012
comment
gmpy поддерживает библиотеку GMP. И библиотека GMP имеет ограниченную поддержку чисел с плавающей запятой. Функция sqrt() в GMP определена только для целых чисел. gmpy2 поддерживает библиотеки MPFR (с плавающей запятой) и MPC (сложные) в дополнение к GMP. В gmpy2 функция sqrt() теперь возвращает результат mpfr (с плавающей запятой) или mpc (сложный). Целочисленные функции были переименованы, чтобы начинаться с i. - person casevh; 24.11.2012
comment
@Aksiom Обратите внимание, что мой ответ изменился. - person Thijs van Dien; 24.11.2012