9

最終値を小数点以下 2 桁まで出力する通貨コンバーターを作成しようとしています。

プログラム全体を作成しましたが、これはほんの一部ですが、プログラムを小数点以下 2 桁まで出力できません。以前に寄せられた質問から「%.2f」を使用しようとしましたが、うまくいきません。

私がこれまでに持っているプログラムは

conversion_Menu= "What do you want to convert?\n1.Pound Sterling\n2.Euro\n3.USD\n4.Japanese Yen"
x = input (conversion_Menu)
if x == "1":
    sterling_Menu = "What do you want to convert to?\n1.Euro's\n2.USD\n3.Japanese Yen"
    y = input (sterling_Menu)
    currency_Total = float(input("How much do you wish to exchange?"))
    total_Exchange = currency_Total * sterling_Conversion
    print ("This converts to", total_Exchange) 

変数 total-Exchange に格納される値が常に 2 dp であることを保証したいと思います。

4

2 に答える 2

6

値を 2 桁の精度で格納する場合は、次を使用しますround()

>>>t = 12.987876
>>>round(t,2)
#12.99

変数をより正確に保存する必要がある場合(たとえば、さらなる計算のために)、出力を丸める必要がある場合、提案された"%.2f"ものは私にとって完璧に機能します:

>>>t = 12.987876
>>>print "This converts to %.2f" % t
#This converts to 12.99
于 2013-09-13T08:23:31.690 に答える