use*_*836 5 python decimal-point
我正在尝试创建一个货币转换器,将最终值输出到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)
Run Code Online (Sandbox Code Playgroud)
我想保证存储在变量total-Exchange中的值始终为2 dp。
如果您希望以 2 位精度存储值,请使用round():
>>>t = 12.987876
>>>round(t,2)
#12.99
Run Code Online (Sandbox Code Playgroud)
如果您需要更精确地保存变量(例如用于进一步计算),但输出要四舍五入,则建议"%.2f"对我来说非常有效:
>>>t = 12.987876
>>>print "This converts to %.2f" % t
#This converts to 12.99
Run Code Online (Sandbox Code Playgroud)
小智 5
用 Python 3.0 测试
t = 12.987876
print(f'This converts to {t:.2f}')
Run Code Online (Sandbox Code Playgroud)
结果:
这将转换为 12.99