2012-09-13 85 views
4
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) 

十进制值和输入£1它总是返回0我怎么如果我把汇率在0.81打印在python

回答

7

使用float(),而不是int()input()电话。即,

gpb = float(input()) 

否则如果用户输入0.81int()将在转换过程中截断这0

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

0

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