0
私のプログラムでは大きな数字が表示されています。このため、任意の数値を10の累乗(E記法)に変換します。私は思いついたアイデアを試しましたが、次のようなエラーが表示されます:Python任意の数を10の累乗に変換します(E記法)
OverflowError: cannot convert float infinity to integer
私はどのように成功しますか?
私のプログラムでは大きな数字が表示されています。このため、任意の数値を10の累乗(E記法)に変換します。私は思いついたアイデアを試しましたが、次のようなエラーが表示されます:Python任意の数を10の累乗に変換します(E記法)
OverflowError: cannot convert float infinity to integer
私はどのように成功しますか?
Python float
では通常、倍精度のIEEE-754浮動小数点数です。 11の指数ビットを持ちますが、これは実際には最大で〜2^1024の数を表すことができることを意味します。あなたはそれよりも大きい結果持っていれば:Pythonは代わりにIEEE 754無限大に変換されます:
>>> 1e308
1e+308
>>> 1e309
inf
したがって、この大きなはfloat
として表現することができません数を。
これ以上の数値は、Pythonでは10進数または整数/ longとして表現できます。
どのようなコードを使用しましたか? –
修正を決定するためにエラーをスローするコードの一部が必要です。 –