Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中使用Decimal()获得值的扩展?_Python - Fatal编程技术网

如何在python中使用Decimal()获得值的扩展?

如何在python中使用Decimal()获得值的扩展?,python,Python,我正在使用函数获取展开后的值 当我尝试对数字使用十进制方法时:1e-6, 我看到下面的扩展 >>从十进制输入十进制 >>>十进制('1e-6') 十进制('0.000001') 但是当我尝试使用编号:1e-7时,我没有得到正确的扩展 >>从十进制输入十进制 >>>十进制('1e-7') 十进制('1E-7') 当数字的指数为-7或更小时,有人能帮我使用十进制函数得到展开式吗?我认为它正在正确地进行转换,但它只是没有打印出来。请注意,e如何更改为e v =Decimal('1e-7')

我正在使用函数获取展开后的值

当我尝试对数字使用十进制方法时:
1e-6
, 我看到下面的扩展

>>从十进制输入十进制
>>>十进制('1e-6')
十进制('0.000001')
但是当我尝试使用编号:
1e-7
时,我没有得到正确的扩展

>>从十进制输入十进制
>>>十进制('1e-7')
十进制('1E-7')

当数字的指数为-7或更小时,有人能帮我使用十进制函数得到展开式吗?

我认为它正在正确地进行转换,但它只是没有打印出来。请注意,
e
如何更改为
e

   v =Decimal('1e-7')
   print("{:.10f}".format(v)) 
这将产生

   0.0000001000 

是的,看起来不错。但是如果我加/减2个值。假设
1e-6
1e-7
那么它通过使用以下代码
val=“{.10f}”。格式(十进制('3.47e-7'))给出正确的结果;sum=Decimal(val)+Decimal(val)=Decimal('0.0000038170')
但是当我尝试将它们相乘时,却没有得到正确的格式
mul=Decimal(first_val)*Decimal(second_val)=Decimal('1.20409000E-12')
所以我们没有正确的方法来实现吗it@AbinashBiswal是同一个号码!您不必担心数字的内部表示形式或其默认字符串表示形式。非常小的数字是用科学记数法写的,因为在有效数字之前数完所有的零是一件痛苦的事情。如果您想要固定格式,请像使用
“{:10f}”一样将其格式化为固定格式。format()
是的,您是对的!谢谢你的回复。