关于异常处理,2 个很赞的功能

本文介绍两个实用的Python异常处理功能:一是如何强制用户输入整数,直到输入正确为止;二是结合try、except和else语句,实现更精细的错误处理流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天,咱们探讨 2 个关于异常处理的实用功能。

1 强制输入整数

强制输入整数,否则程序不终止。要想实现这个功能,可使用 try 和 except :

In [5]: while True:
   ...:     try:
   ...:         a = int(input('请输入一个整数: '))
   ...:         break
   ...:     except ValueError:
   ...:         print('input value is not a valid number')
   ...:
请输入一个整数: e
input value is not a valid number
请输入一个整数: f
input value is not a valid number
请输入一个整数: 1

一旦输入不是整数,就会触发 ValueError 异常,再次提示输入一个整数。直到输入一个整数,才会 break

这是 try 和 except 的一个典型应用。

2 try except 和 else

try 和 except 组对比较容易理解,触发异常执行 except 里的代码,否则不执行。但是加上一个 else 实现怎样的作用呢?

首先看下面的例子:

In [9]: while True:
   ...:     try:
   ...:         a = int(input('请输入一个整数: '))
   ...:     except ValueError:
   ...:         print('input value is not a valid number')
   ...:     else:
   ...:         if a % 2 == 0:
   ...:              print('输入的 %d 是偶数' %(a,))
   ...:         else:
   ...:             print('输入的 %d 是奇数' %(a,))
   ...:         break

测试:

请输入一个整数: t
input value is not a valid number
请输入一个整数: 5
输入的 5 是奇数

try 保护的代码正常通过后,else 才执行。

有的朋友会问,为什么不把 else 这块代码放到 try 里面?这还是有一定区别的。放到 else 中意味着这块代码不必受保护。

阅读更多:

Python 10 个极简用法,第五期

Python 10 个极简用法,第四期

以上就是 2 个关于异常处理的实用功能。码字不易,点个在看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值