如何在python中打印十进制值

时间:2012-09-13 17:35:21

标签: python decimal floating-accuracy

print("enter start() to start the program")

def start():
    print("This script converts GBP into any currency based on the exchange rate...")
    print(" ") #enters a line
    exchangeRate = int(input("Enter the exchange rate (Eg: 0.80)"))
    print("how much would you like to convert???")                       
    gpb = int(input())
    print(gpb*exchangeRate)

如果我将汇率设为0.81并输入£1,则总是返回0.

2 个答案:

答案 0 :(得分:7)

input()电话中使用float()代替int()。即,

    gpb = float(input())

否则,如果用户输入0.81,则int()会在转换期间将其截断为0

通过使用float(),您将保持提供的十进制值作为输入,您的计算应该产生您期望的结果。

答案 1 :(得分:0)

你指定类型为int .....当你将1乘以0.81得到0.81时,那些是整数(0,1,2,3,4,5,6,7,8 ....)。 ....整数的关键数是点之前的一个,在这种情况下是零。所以就像之前的答案很快就说改变变量的类型。