import decimal # Decimals
a=decimal.getcontext().copy()
print a
什麼是有用的。'decimal.getcontext()。copy()'是什麼意思
import decimal # Decimals
a=decimal.getcontext().copy()
print a
什麼是有用的。'decimal.getcontext()。copy()'是什麼意思
雖然我同意這裏的其他許多評論,但我認爲我會投入一塊骨頭。
decimal
模塊是一種用於對任意精度數進行運算的實用程序。這在一些科學環境中用於計算遇到舍入誤差的事物。經典的例子是計算pi的第9999位。你不能用浮動來做到這一點。
小數庫使用「上下文」的概念來決定你真正想要的精度。由於您想要的精度越高,計算運行速度越慢。 decimal.getcontext()
部分返回默認上下文。但是通過一個瘋狂的「陷阱」(我實際上已經成爲獵物),這實際上只是一個指針。因此,如果您要更改decimal.setcontext('foo')
的上下文,您實際上也會更改a
。手動模塊有一個.copy()
方法。
原始程序員可能是這樣做的,以保存上下文的副本供以後使用。也許他/她想以較低的精度執行部分計算以節省時間,然後想要以更高的精度執行困難的部分。
雖然蟒蛇> 2.5,這是最好的像一個上下文管理器完成「與」
from decimal import localcontext
with localcontext() as ctx:
ctx.prec -= 5 # Perform a low precision calculation
s = calculate_something()
s = +s # Round the final result back to the default precision
但是,如果沒有相關的代碼的其餘部分我的猜測是沒有比你更好。
儘管我已經使用了十進制模塊,但在python文檔here中很容易找到所有這些。試着去那裏,先找到這樣的問題......如果你能弄明白自己,你會記得更久。當你回答問題時,你會感受到我們其他人的感受。
一個是可變的,你可以很容易地已經把
import decimal # Decimals
print decimal.getcontext().copy()
要刪除提及a
我想答案是,在這個特殊的情況下,也是沒有名字目的
然而,在事更大的計劃,如果你需要使用的
a=decimal.getcontext().copy()
值0
,那麼你不想重新計算它,因爲這個函數可能會改變,或者它可能是一個昂貴的操作。
我回答假設一個新手。
「a」是一個變量。變量是一個邏輯單元,它在執行程序時在計算機內存上保存一個值/字符串等。例如,如果要添加1和2並獲得答案,則應在內存中創建一個「變量」,例如「a」,並將「+1」的值指定爲1 + 2。
在此代碼中,已經導入了一個名爲decimal的庫。它包含一組操作或方法。然後你對它執行一些操作並將輸出分配給一個名爲「a」的變量。然後你試圖把它打印到控制檯。
N.B:你不應該使用像a,b這樣的變量名。這不是一個好習慣。你應該使用一個有意義的詞。
hm。屬於variableoverflow.com – moritz 2010-01-04 06:23:58
@ zjm1126,您的個人資料要求我們用'code'而不是說明來回答,並且我注意到您的問題通常採用代碼片段的形式。現在,經過60多個問題,我們可以看到你只希望僅僅複製代碼而不理解它*。這不是編程的方式。你應該花時間學習和理解編程語言,然後才能期望編程。我意識到編程期望你熟悉英語,這可能是一個問題。對此我們無能爲力。 **你必須學習它,恐怕。祝你好運。 – pavium 2010-01-04 06:38:21
非常感謝,我會努力。 – zjm1126 2010-01-04 07:13:31