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中字符编码简介、方法及使用建议
Jan 08 Python
在windows系统中实现python3安装lxml
Mar 23 Python
python爬虫之BeautifulSoup 使用select方法详解
Oct 23 Python
解决pandas 作图无法显示中文的问题
May 24 Python
Python3网络爬虫中的requests高级用法详解
Jun 18 Python
使用python实现简单五子棋游戏
Jun 18 Python
Python 函数用法简单示例【定义、参数、返回值、函数嵌套】
Sep 20 Python
python3多线程知识点总结
Sep 26 Python
python类中super() 的使用解析
Dec 19 Python
python3中sorted函数里cmp参数改变详解
Mar 12 Python
python针对Oracle常见查询操作实例分析
Apr 30 Python
Anaconda安装pytorch和paddle的方法步骤
Apr 03 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中常用的预定义变量小结
2012/05/09 PHP
探讨各种PHP字符串函数的总结分析
2013/06/05 PHP
PHP移动文件指针ftell()、fseek()、rewind()函数总结
2014/11/18 PHP
用PHP写的一个冒泡排序法的函数简单实例
2016/05/26 PHP
Laravel 实现Controller向blade前台模板赋值的四种方式小结
2019/10/22 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
2020/02/27 PHP
javascript一些不错的函数脚本代码
2008/09/10 Javascript
javaScript call 函数的用法说明
2010/04/09 Javascript
js+JQuery返回顶部功能如何实现
2012/12/03 Javascript
onkeypress字符按键兼容所有浏览器使用介绍
2013/04/24 Javascript
js判断浏览器类型的方法
2013/08/07 Javascript
全面解析Bootstrap中scrollspy(滚动监听)的使用方法
2016/06/06 Javascript
JQuery 进入页面默认给已赋值的复选框打钩
2017/03/23 jQuery
微信小程序与php 实现微信支付的简单实例
2017/06/23 Javascript
一个简易的js图片轮播效果
2017/07/22 Javascript
详解http访问解析流程原理
2017/10/18 Javascript
Vue+webpack项目基础配置教程
2018/02/12 Javascript
vue基础之模板和过滤器用法实例分析
2019/03/12 Javascript
angular4+百分比进度显示插件用法示例
2019/05/05 Javascript
简述vue-cli中chainWebpack的使用方法
2019/07/30 Javascript
详解nuxt 微信公众号支付遇到的问题与解决
2019/08/26 Javascript
[02:17]快乐加倍!DOTA2食人魔魔法师至宝+迎霜节活动上线
2019/12/22 DOTA
Python实现从订阅源下载图片的方法
2015/03/11 Python
Python3.4 splinter(模拟填写表单)使用方法
2018/10/13 Python
Pandas DataFrame求差集的示例代码
2020/12/13 Python
css3实现小箭头各种图形效果
2020/07/08 HTML / CSS
村党支部书记承诺书
2014/05/29 职场文书
2014年医院十一国庆节活动方案
2014/09/15 职场文书
2014年采购部工作总结
2014/11/20 职场文书
求职推荐信范文
2015/03/27 职场文书
小学生勤俭节约倡议书
2015/04/29 职场文书
单位政审意见范文
2015/06/04 职场文书
看雷锋电影观后感
2015/06/10 职场文书
2016母亲节感恩话语
2015/12/09 职场文书
golang 实现Location跳转方式
2021/05/02 Golang