如果我要求用户输入数字,只要未输入空字符串,该数字就会继续输入,如果输入空字符串,则程序结束。 我当前的代码是:
n=0
while n != "":
n = int(input("Enter a number: "))
但显然这并不是我想要的。我可以删除 int 输入并将其保留为常规输入,但这将允许所有类型的输入,而我只想要数字。 我之前对此有不同的看法吗?
最佳答案
对空字符串调用 int()
将导致 ValueError
,因此您可以将所有内容封装在 try block 中:
>>> while True:
try:
n = int(input('NUMBER: '))
except ValueError:
print('Not an integer.')
break
NUMBER: 5
NUMBER: 12
NUMBER: 64
NUMBER:
not a number.
这还有一个额外的好处,可以捕获任何非 int 的其他内容。
关于python - 只要不输入空就打印数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33762493/