Форум сайта python.su
народ помогите есть какой нибудь другой тип данных с большей точностью (нужно чтоб минимум после запятой было 15 знаков), а то у флоат ограничение всего 10 знаков после запятой. Нужно для научных вычислений.
Офлайн
http://calcrpnpy.sourceforge.net/clnumManual.html
http://code.google.com/p/gmpy/
decimal
(а вообще кажется тема обсуждалась уже)
Офлайн
А откуда у float такое ограничение?
Офлайн
53 бита мантиссы - что то около 15 десятичных разрядов. Почти 16 - но все равно не слишком много :)
Если нужно строгие 15 знаков после запятой плюс еще сколько-то там перед ней, float оказывается чуть-чуть узковат.
Отредактировано (Окт. 10, 2010 02:30:14)
Офлайн
в numpy есть такой тип как flout64 позволяет использовать до 13 знаков после запятой. у меня проблема такова что есть файл(текстовик) со значениями типа -0.123456789012345 вот их мене надо из этих значений составить массив.
Офлайн
Может вобще не стоит float использовать? Можно попробовать использовать 2 целых числа - одно для целой части и второе для дробной.
Офлайн
или просто целое число, первые 15 знаков считать как до запятой.
Офлайн
o7412369815963В какой системе счисления знаки считать будете? В двоичной одно получается, в шестнадцатеричной немного другое.
или просто целое число, первые 15 знаков считать как до запятой.
Офлайн
S1asHnumpy.float64, к вашему сведению, имеет ту же разрядность что и обычный float. И это - не 13 знаков, как я уже писал.
в numpy есть такой тип как flout64 позволяет использовать до 13 знаков после запятой. у меня проблема такова что есть файл(текстовик) со значениями типа -0.123456789012345 вот их мене надо из этих значений составить массив.
Офлайн
Андрей Светловв десятичной конечно же, для перевода достаточно разделить или умножить на 10^n. при этом математика не меняется.o7412369815963В какой системе счисления знаки считать будете? В двоичной одно получается, в шестнадцатеричной немного другое.
или просто целое число, первые 15 знаков считать как до запятой.
А десятичная вообще не очень удобно переводится
Офлайн