python循环判断输入的字符是否为一个1~9的数字,如果是,则输出该数字,并退出循环,否则抛出异常:捕获异常后,输出异常提示。
时间: 2024-06-07 15:11:59 浏览: 172
编写一个程序接受用户输入的字符。如果输入的字符是0-9数字中的一个,则显示“您输入了一个数字”,否则显示“这不是一个数字”。
可以使用 while 循环和 try-except 来实现:
```
while True:
try:
num = input("请输入一个1~9的数字:")
if num.isdigit() and 1 <= int(num) <= 9:
print("您输入的数字是:", num)
break
else:
raise ValueError("请输入一个1~9的数字!")
except ValueError as e:
print("发生异常:", e)
```
代码解释:
1. while True: 表示无限循环,直到输入符合条件的数字才退出循环。
2. try-except 块用于捕获可能出现的 ValueError 异常,如果发生异常,则跳转到 except 块。
3. input() 函数用于获取用户输入的内容。
4. isdigit() 方法用于判断字符串是否只包含数字字符。
5. int() 函数用于将字符串转换成整数。
6. raise 语句用于抛出异常。
7. 如果输入的数字符合要求,则输出该数字,并使用 break 语句退出循环。
阅读全文