python如何处理异常

本文通过一个除法程序示例,介绍了Python中如何使用try...except...结构来处理异常情况,确保程序运行的稳定性。

在一段程序中,为了能够让程序健壮,必须要处理异常。举例:

#!/usr/bin/env python
# coding=utf-8

while 1:
    print "this is a division program."
    c = raw_input("input 'c' continue, otherwise logout:")
    if c == 'c':
        a = raw_input("first number:")
        b = raw_input("second number:")
        try:
            print float(a)/float(b)
            print "*************************"
        except ZeroDivisionError:
            print "The second number can't be zero!"
            print "*************************"
    else:
        break

-----------------------------------

处理异常的方式之一,使用try...except...

对于上述程序,只看try和except部分,如果没有异常发生,except子句在try语句执行之后被忽略;如果try子句中有异常可,该部分的其它语句被忽略,直接跳到except部分,执行其后面指定的异常类型及其子句。

except后面也可以没有任何异常类型,即无异常参数。如果这样,不论try部分发生什么异常,都会执行except。

 
Python中,异常是指程序运行过程中出现的错误或异常情况,例如除以0、索引超出范围等。为了避免程序因异常而崩溃,我们可以使用异常处理机制来捕捉并处理这些异常Python中的异常处理语句有两种:try-except语句和try-finally语句。其中try-except语句用于捕捉和处理异常,try-finally语句用于在无论异常是否发生时都要执行的代码。 try-except语句的基本语法如下: ``` python try: # 可能会出现异常的代码块 except Exception1: # 处理 Exception1 异常的代码块 except Exception2: # 处理 Exception2 异常的代码块 else: # 没有异常时会执行的代码块 finally: # 无论是否有异常都会执行的代码块 ``` 在try语句块中放置可能会抛出异常的代码,如果出现异常,则会跳到相应的except语句块中处理异常。如果没有异常,则会执行else语句块中的代码。finally语句块中的代码无论异常是否发生,都会执行。 例如,以下代码用try-except语句处理了除以0的异常: ``` python try: a = 1 / 0 except ZeroDivisionError: print("除数不能为0") ``` try-finally语句的基本语法如下: ``` python try: # 可能会出现异常的代码块 finally: # 无论是否有异常都会执行的代码块 ``` 在try语句块中放置可能会抛出异常的代码,无论是否出现异常,finally语句块中的代码都会执行。 例如,以下代码用try-finally语句关闭了文件: ``` python try: f = open("file.txt", "r") print(f.read()) finally: f.close() ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值