我基本上在python上进行了货币兑换,但是我试图将用户输入限制为4位数,当我尝试它时,它会不断循环并打印出你输入的数字。请帮忙。这是该计划的一部分:
amount=input('\nPlease input the amount of '+ numtoletter + '\'s you have : ' + symbol)
while True:
try:
amount1 = input(amount)
if len(amount1) > 4:
raise ValueError()
amount1 = int(amount1)
except ValueError:
print('The maximum number of ' + currencyfrom + ' is ' + symbol + '9999 please try again')
else:
break
请输入您所拥有的英镑金额:£22222
22222
最多1个是9999英镑,请再试一次
22222
最多1个是9999英镑,请再试一次
22222
最多1个是9999英镑,请再试一次
以下只是显示什么是numtoletter
if currencyto== '1':
numtoletter1 = 'pound sterling'
elif currencyto == '2':
numtoletter1 = 'euro'
elif currencyto == '3':
numtoletter1 = 'us dollar'
elif currencyto =='4':
numtoletter1 = 'japanese yen'
来自英镑,欧元,美元,日元的货币和货币
我使用Limit user integer input to 8 digits帮助我,这是我从
获取代码的部分解决方法:
while True:
try:
amount1 = input('please enter the amount : ')
if len(amount1) < 4:
amount2 = amount1*4
break
except ValueError:
print('Opps, incorrect amount. Please retry')