我试图为我的作业制作一个程序,我对某个部分有疑问。
程序的一部分要求用户输入第一枚硬币,如果用户按下ENTER键,则应重复该程序,要求用户再次输入第一枚硬币,直到它们实际输入一个数字为止。
我现在对此部分的代码是:
coin = int(input("Enter first coin: ))
while coin == "":
coin = int(input("Enter first coin: ))
我知道这里的问题是我试图将空字符串作为int来创建错误:
Traceback (most recent call last):
builtins.ValueError: invalid literal for int() with base 10: ''
所以我的问题是,我如何更改程序以便将空字符串更改为int?我尝试在互联网上搜索它,但我无法解决我的问题。
答案 0 :(得分:0)
使用无限循环可以突破并捕获异常
while True:
try:
coin = int(input("Enter coin: "))
break
except ValueError:
continue
当他们没有输入实际值时,异常将被捕获,然后再次循环。如果他们输入一个实数,你就会突破循环