我对Python和一般的编码都比较陌生,最近我的任务是用Python设计一个货币转换器。我几乎完成了代码,但最后一行出现了一个问题。你知道吗
currenctcurrency = input ("Select a starting currency: ")
print ('You selected %s' %currentcurrency)
value = input ("Input your current value: ")
new currency = input ("Select a new currency: ")
if currentcurrency == 'Pound' and newcurrency == 'Pound':
convertor = 1
上述代码部分对四种支持的货币(英镑、欧元、美元和日元)的每个组合重复。你知道吗
rint ("Do you want to convert", (value), (currentcurrency), "to", (newcurrency), "?")
answer = input ("Yes/No: ")
if answer == 'No':
quit(1)
if answer == 'Yes':
result = (convertor) * (value)
print (result)
当我运行代码时,输入成功运行,但当它试图将两个变量相乘时,我得到一个错误,它显示: TypeError:不能将序列与“float”类型的非int相乘
正如我之前所说的,我对Python还不熟悉,不太了解如何解决这个问题。如果有人能就我的问题给我一个简单/解释的答案,我将不胜感激。你知道吗
谢谢大家的阅读,祝你们有一个美好的一天!你知道吗
输入返回字符串(字符序列)。您需要将字符串解析为数值。你知道吗
您可以尝试:
只要换一行:
对此:
出现错误的原因是
input
函数返回一个字符串。可以将字符串(或任何序列)与整数相乘,例如"foo" * 3
计算结果为"foofoofoo"
。但这显然不适用于浮点数,这不是你想要的。相反,您需要将字符串转换为一个数字,然后将其与convertor
值相乘。你知道吗相关问题 更多 >
编程相关推荐