python基础之错误和异常处理


Posted in Python onOctober 24, 2021

python基础之错误和异常处理

python基础之错误和异常处理

import Exception
# except 在捕获错误异常的时候 是要根据具体的错误类型来捕获的
# 用一个块 可以捕获多个不同类型的异常
# EXception 可以捕获所有异常 当对出现的问题或者错误不确定的情况下 可以使用此种
print(dir(Exception))
try:
    # print(b)  #捕获逻辑的代码
    li=[1,2,3,4]
    print(li[10])
    pass
except NameError as msg:
    # 捕获到的错误 才会在这里执行
    print(msg)
    pass
except IndexError as msg:
    print(msg)
print('初次接触异常')
print('HAHAHAHAHHAHAHAH')

python基础之错误和异常处理

python基础之错误和异常处理

try:
    # print(b)  #捕获逻辑的代码
    # li=[1,2,3,4]
    # print(li[10])
    a=10/0
    pass
except NameError as msg:
    # 捕获到的错误 才会在这里执行
    print(msg)
    pass
except IndexError as msg:
    print(msg)
    pass
except ZeroDivisionError as msg:
    print(msg)
print('初次接触异常')
print('HAHAHAHAHHAHAHAH')

python基础之错误和异常处理

异常类型

python基础之错误和异常处理

try:
    print(b)  #捕获逻辑的代码
    # li=[1,2,3,4]
    # print(li[10])
    # a=10/0
    pass
# except NameError as msg:
#     # 捕获到的错误 才会在这里执行
#     print(msg)
#     pass
# except IndexError as msg:
#     print(msg)
#     pass
# except ZeroDivisionError as msg:
#     print(msg)
#     pass
except Exception as msg:
    print(msg)
    pass
print('初次接触异常')
print('HAHAHAHAHHAHAHAH')

python基础之错误和异常处理

def A(s):
    return 10/int(s)
    pass
def B(s):
    return A(s)*2
def main():
    try:
        B('0')
        pass
    except Exception as msg:
        print(msg)
        pass
    pass
main()
# 不需要在每个可能出错的地方去捕获,只要在合适的层次去捕获错误就可以了 这样的话 就大大减少我们写try----exception的麻烦
# 异常的抛出机制
#如果在运行时发生异常 解释器会查找相应的异常捕获类型
#如果在当前函数里面没有找到的话 它会将异常传递给上层的调用函数
#如果在最外层 没有找到的话 解释器就会退出 程序down掉

python基础之错误和异常处理


python基础之错误和异常处理

python基础之错误和异常处理

class ToolongmyException(Exception): #自定义异常
    def __init__(self,leng):
        '''
         :param leng:长度
        '''
        self.len=leng
    pass
    def __str__(self):
        return '您输入的数据长度是'+str(self.len)+'已经超过长度了'
    pass
def name_Test():
    name=input('请输入姓名:')
    if len(name)>5:
        raise ToolongmyException(len(name))   #抛出异常
    else:
        print(name)
        pass
    pass
name_Test()

python基础之错误和异常处理

python基础之错误和异常处理

class ToolongmyException(Exception): #自定义异常
    def __init__(self,leng):
        '''
         :param leng:长度
        '''
        self.len=leng
    pass
    def __str__(self):
        return '您输入的数据长度是'+str(self.len)+'已经超过长度了'
    pass
def name_Test():
    name=input('请输入姓名:')
    try:
        if len(name)>5:
            raise ToolongmyException(len(name))   #抛出异常
        else:
            print(name)
            pass
    except ToolongmyException as result:
        print(result)
        pass
    finally:
        print('执行完毕了')
    pass
name_Test()

python基础之错误和异常处理

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注三水点靠木的更多内容!

Python 相关文章推荐
Python实现的ini文件操作类分享
Nov 20 Python
基于asyncio 异步协程框架实现收集B站直播弹幕
Sep 11 Python
在Linux命令行终端中使用python的简单方法(推荐)
Jan 23 Python
Python语言描述连续子数组的最大和
Jan 04 Python
python3+PyQt5+Qt Designer实现扩展对话框
Apr 20 Python
python读取xlsx的方法
Dec 25 Python
python3利用ctypes传入一个字符串类型的列表方法
Feb 12 Python
一行python实现树形结构的方法
Aug 09 Python
使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件及出现问题解决方法
Sep 06 Python
Tensorflow实现部分参数梯度更新操作
Jan 23 Python
在tensorflow中实现屏蔽输出的log信息
Feb 04 Python
PyTorch中的C++扩展实现
Apr 02 Python
Python中递归以及递归遍历目录详解
Oct 24 #Python
python基础之函数的定义和调用
python 标准库原理与用法详解之os.path篇
Oct 24 #Python
Python干货实战之八音符酱小游戏全过程详解
关于python pygame游戏进行声音添加的技巧
Oct 24 #Python
python实现简单石头剪刀布游戏
Python 数据结构之十大经典排序算法一文通关
You might like
一个从别的网站抓取信息的例子(域名查询)
2006/10/09 PHP
PHP 获取MySQL数据库里所有表的实现代码
2011/07/13 PHP
php入门学习知识点二 PHP简单的分页过程与原理
2011/07/14 PHP
DEDECMS首页调用图片集里的多张图片
2015/06/05 PHP
PHP传值到不同页面的三种常见方式及php和html之间传值问题
2015/11/19 PHP
PHP实现APP微信支付的实例讲解
2018/02/10 PHP
Javascript String对象扩展HTML编码和解码的方法
2009/06/02 Javascript
event.srcElement 用法笔记e.target
2009/12/18 Javascript
解析javascript 实用函数的使用详解
2013/05/10 Javascript
jqueyr判断checkbox组的选中(示例代码)
2013/11/08 Javascript
javascript常用方法总结
2015/05/14 Javascript
JavaScript基本数据类型及值类型和引用类型
2015/08/25 Javascript
jquery京东商城双11焦点图多图广告特效代码分享
2015/09/06 Javascript
JavaScript实现倒计时代码段Item1(非常实用)
2015/11/03 Javascript
详解Jquery 遍历数组之$().each方法与$.each()方法介绍
2017/01/09 Javascript
Angular中$broadcast和$emit的使用方法详解
2017/05/22 Javascript
vue 项目接口管理的实现
2019/01/17 Javascript
微信域名检测接口调用演示步骤(含PHP、Python)
2019/12/08 Javascript
[07:43]《辉夜杯》公开赛晋级外卡赛战队—TRG训练生活探秘
2015/12/11 DOTA
微信 用脚本查看是否被微信好友删除
2016/10/28 Python
深入理解Python中变量赋值的问题
2017/01/12 Python
Python实现的多线程同步与互斥锁功能示例
2017/11/30 Python
Python实现钉钉发送报警消息的方法
2019/02/20 Python
对python 调用类属性的方法详解
2019/07/02 Python
pandas实现将日期转换成timestamp
2019/12/07 Python
PHP高级工程师面试问题推荐
2013/01/18 面试题
老公保证书范文
2014/04/29 职场文书
小学生一分钟演讲稿
2014/08/26 职场文书
村长党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
民间借贷协议书范本
2014/10/01 职场文书
业务员岗位职责
2015/02/03 职场文书
2015年食品安全工作总结
2015/05/15 职场文书
起诉状范本
2015/05/20 职场文书
组织委员竞选稿
2015/11/21 职场文书
2019年二手房买卖合同范本
2019/10/14 职场文书
高性能跳频抗干扰宽带自组网电台
2022/02/18 无线电