栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python学习 第十八章 异常

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python学习 第十八章 异常

异常

程序执行过程中,如果遇到错误,就会抛出异常。

异常捕获,可以帮助程序员捕捉异常,集中性应对突发事件,保证稳定性和健壮性。

语法:

try:
    num = int(input("请输入一个整数:"))
except:
    print("请输入正确的整数!")

请输入一个整数:a
请输入正确的整数!

针对不同的错误类型输出不同的错误

try:
    num = int(input("请输入一个整数:"))
    result = 8 / num
except ZeroDivisionError:
    print('除零错误')
except ValueError:
    print("请输入正确的整数")
捕获未知错误

try:
    num = int(input("请输入一个整数:"))

    result = 8 / num
    print(result)
except ValueError:
    print("请输入正确的整数")
except Exception as result:
    print("未知错误 %s" % result)
异常捕获完整语法

try:
    num = int(input("请输入一个整数:"))

    result = 8 / num
    print(result)
except ValueError:
    print("请输入正确的整数")
except Exception as result:
    print("未知错误 %s" % result)
else:
    print("尝试成功,没有异常")
finally:
    print("无论错误与否都执行")
print("-" * 50)
异常的传递

程序出现异常,传递给 函数的调用方。
传递到主程序,仍然无异常处理,程序终止。

def demo1():
    return int(input("请输入整数: "))


def demo2():
    return demo1()


print(demo2())


利用异常的传递性 在主程序中 捕获异常。

def demo1():
    return int(input("请输入整数: "))
def demo2():
    return demo1()
try:
    print(demo2())
except Exception as result:
    print("未知错误 %s" % result)

案例:(用户输入密码)

def input_password():
    pwd = input("请输入密码:n")
    if len(pwd) >= 8:
        return pwd
    else:
        print("主动抛出异常")
        # 创建异常对象 exception
        ex = Exception("密码长度不够")
        raise ex

try:
    print(input_password())
except Exception as result:
    print(result)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/302558.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号