2011-01-18 5 views
12

decimal.DecimalをPythonのすべての数値の既定の型にする方法はありますか?私はすべての数値に対してdecimal.Decimal(...)を呼び出す必要なしに、bcおよびdcプログラムと同様の方法でPythonを使用できるようにしたいと考えています。decimal.DecimalをPythonの既定の数値型にする

EDIT:初心者の場合:bc

編集2:ありがとうございますtokenize module.

+0

あなたは、Pythonが整数演算の代わりに浮動小数点演算を行うことを保証していますか? – seggy

+0

多分努力して、これを行うために通訳をハックするかもしれません。しかし、なぜ?ある場所に小数点を必要とするPythonプログラムを書くときは、そこで簡単に使うだけです。 abritary precision decimalsが必要な場合は、それを提供するものを使用してください。 (そして@seggy:float!= decimal !!) – delnan

+0

ええ、私は投稿した後にそれを実現しました。あなたが正しいですが、pythonの内部構造に重大な悪影響を及ぼさない方法はないようです。利益以上の努力は価値があるだろう、IMO。 – seggy

答えて

4

あなたは本当にあなたが、私は私の答えに触れしようとはしませんいくつかの深刻な魔法、なしに聞いて何をすることはできませんが、decimal.Decimal(...)

from decimal import Decimal as D 
num = D("1") + D("2.3") 

編集を行うよりも少なくともわずかにもっと簡単な方法があります:コメントの短い形式を使用してください。

+4

'from decimal import Decimal as D' – marcog

+1

それはそういうことですが、あらゆる数字に対して明白なアクションを必要としないものを探していました。 –

+2

また、 'D(" 2.3 ")のようになりますので、精度を失うことはありません。 –

関連する問題