簡體   English   中英

除后得到所有小數位

[英]get all decimal places after division

我必須用1/50000進行計算。 當我做

float(1/50000)

在python中,它僅返回0.0 如何在python的功效中獲取實際值? 我想得到2.5*10^(-5)

In [2]: 1.0/50000
Out[2]: 2e-05

注意.0 它確保1.0是浮點文字,而不是整數。

編寫此代碼的另一種方法如下:

In [3]: float(1)/50000
Out[3]: 2e-05

您現在擁有的首先使用整數除法來計算1/50000 除法的結果是整數0 ,然后將其轉換為浮點值( 0.0 )。

最后,請注意,您當前的代碼將在Python 3中正確運行(並且float()是多余的)。 這是由於PEP 238

使用python 3.x

>>> 1/50000
2e-05

或在python 2.x上

>>> from __future__ import division

使用1.0/50000float(1)/50000 這樣做的方法,到轉換為浮點數時,除法已經完成,為時已晚,無法獲得額外的精度。

輸入參數必須是浮點數才能被划分為浮點數:

float(1) / float(50000)

要么

1./50000

小數點將1強制轉換為浮點數。 如果輸入值之一是浮點型,則除法運算也將浮點型。

您正在做的事情是將整數除以0,然后將0強制轉換為浮點數'0.0'。

只需將參數之一轉換為float即可

>>> 1 / float(50000)
2e-05

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM