質問

私は、Python 2.6からはPython 2.4と2.5に私のプロジェクトをバックポートしています。私のプロジェクトで、私はfloat("inf")を使用し、今私はそれは、Python 2.5で使用できません見つけます。それのバックポートがありますか?

役に立ちましたか?

解決 4

私は、Python 2.5+でテストバックポートを、作成した

、おそらく簡単にはPython 2.4上で動作させることができます:

https://github.com/クール-RR / GarlicSim /ブロブ/マスター/ garlicsim / garlicsim / general_misc / infinity.pyする

他のヒント

スペルそれを長い道のりか短いの方法のいずれかが私のために正常に動作します:

$ python2.4 -c "print float('inf')+200"
inf
$ python2.5 -c "print float('inf')+200"
inf
$ python2.5 -c "print float('infinity')+200"
inf
$ python2.4 -c "print float('infinity')+200"
inf

-cフラグが「Pythonコマンドとして、次の引数を実行します。」を意味する

(拒否された)PEP754 には、特別についてあなたの問題を言及しませんIEEE-754の値。これは、浮動小数点のオーバーフローを発生させ、1e300000を作成するためにinfのようなものを用いることが提案されているが、それはこれがポータブルであることが保証醜いとではないことに注意しない。

あなたは代わりにPythonのに十分な大きさの浮動小数点定数を与えることによって、最大それ偽物にできるはずです。たとえばます:

>>> 1e100000
inf
>>> float('inf') == 1e1000000
True
>>> float('inf') == 2e1000000
True

小数点のモジュールは、Python 2.4以降で利用可能で、正または負の無限小数をサポートしています。それは、常に(小数点以下を追加する。例えばフロートはサポートされません)フロートのように動作しませんが、私には十分だった、比較のために正しいことを、行います。

>>> decimal.Decimal('Infinity') > 1e300
True

数行のためにnumpyの借入ます:

import numpy as np

inf = float(np.inf)
あなたドンので、

ここで、infは、通常のPython float のrel="nofollow">の

scroll top