问题在python中倍增

时间:2015-03-06 00:30:14

标签: python-2.7

我正在尝试在python中制作一个非常简单的BTC To USD转换器(请跟我说我处于开始阶段),但是当我打印该值时,它打印输入的数字275次(1 btc的值) )。我需要它返回用户输入的数量乘以275(因此用户输入1并将1乘以275以返回275)这是我当前的代码:

enteramt = raw_input ("How many")
value = enteramt * 275
print ("This is worth" , value)

它打印的内容: 这是值得的,5555555555555555555555555555555555555555555555555555555555555555

除了他们中的275,但你明白了

3 个答案:

答案 0 :(得分:2)

在python 2 raw_input中返回一个字符串,并在python somestring * value中重复字符串值次数。您希望将输入转换为int,然后执行乘法。 (你也想从打印中删除parens,这是python 3的事情)

enteramt = raw_input ("How many")
value = int(enteramt) * 275
print "This is worth" , value

在python 3中,raw_inputinput取代,所以你要写

enteramt = input ("How many")
value = int(enteramt) * 275
print("This is worth" , value)

答案 1 :(得分:0)

这是因为enteramt是一个字符串。在python中乘以一个字符串将产生重复的字符串。例如:

str = '12'
str * 4
>>> '12121212'

您应该将输入转换为float或int:

str = float(str)
str * 4
>>> 48.0

答案 2 :(得分:0)

您需要转换raw_input()

所以你的新代码应该是这样的:

enteramt = float(raw_input("How many"))
value = enteramt * 275
print ("This is worth" , value)

或者这个:

enteramt = raw_input("How many")
value = float(enteramt) * 275
print ("This is worth" , value)