1

私は、ユーザーに入力を求める Python コードを書いています。次に、ユーザーの入力を使用して、式の答えの小数点以下の桁数を指定する必要があります。

userDecimals = raw_input (" Enter the number of decimal places you would like in the final answer: ") 

次に、これを整数値に変換します

userDecimals = int(userDecimals)

次に、式を書きます。答えには、UserDecimals からのユーザー入力と同じ数の小数点以下の桁数が必要ですが、これを達成する方法がわかりません。

式は

math.sqrt(1 - xx **2)

これが十分に明確でない場合は、より適切に説明しようとしますが、私は python を初めて使用するので、まだ多くのことを行う方法がわかりません。

4

2 に答える 2

1

文字列の書式設定を使用して、書式指定子userDecimalsprecision部分に渡します。

>>> import math
>>> userDecimals = 6
>>> '{:.{}f}'.format(math.sqrt(1 - .1 **2), userDecimals)
'0.994987'
>>> userDecimals = 10
>>> '{:.{}f}'.format(math.sqrt(1 - .1 **2), userDecimals)
'0.9949874371'
于 2013-11-06T17:52:32.997 に答える
0

print ステートメントをフォーマットするときに、表示する有効数字の数を指定できます。たとえば、'%.2f' % float_value小数点以下 2 桁を表示します。詳細な議論については、この質問を参照してください。

次のようなものが必要です。

import math

xx = .2

userDecimals = raw_input (" Enter the number of decimal places you would lik    e in the final answer: ")
userDecimals = int(userDecimals)

fmt_str = "%."+str(userDecimals)+"f"

print fmt_str % math.sqrt(1 - xx **2)

出力:

Enter the number of decimal places you would like in the final answer: 5
0.97980
于 2013-11-06T17:50:38.457 に答える