我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python学习之异常处理

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python学习之异常处理

一、语法导致的异常,应该在程序运行前处理
例子:
print(

输出:
File "E:/python/oldboyday9/learn1.py", line 4
    if
     ^
SyntaxError: invalid syntax

注:输出分三个部分,第一部分错我位置,第二部分SyntaxError错误类型,第三部分错误值invalid syntax

二、逻辑导致的错误
使用try...except捕获异常并处理异常
例子:
try:
    a = 1/0
except Exception as e:
    print('error: ',e)
    
三、异常种类
AttributeError 试图访问一个对象没有的属性,比如foo.x,但是foo没有属性x
IOError 输入/输出异常;基本上是无法打开文件
ImportError 无法引入模块或包;基本上是路径问题或名称错误
IndentationError 语法错误(的子类) ;代码没有正确对齐
IndexError 下标索引超出序列边界,比如当x只有三个元素,却试图访问x[5]
KeyError 试图访问字典里不存在的键
KeyboardInterrupt Ctrl+C被按下
NameError 使用一个还未被赋予对象的变量
SyntaxError Python代码非法,代码不能编译(个人认为这是语法错误,写错了)
TypeError 传入对象类型与要求的不符合
UnboundLocalError 试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,
导致你以为正在访问它
ValueError 传入一个调用者不期望的值,即使值的类型是正确的

四、异常处理
python解释器捕获异常触发异常处理,自己也可以触发异常,编写异常处理
try:
    代码块    #有异常触发,执行except块
except:
    执行处理异常
    
例子:
try:
    f = open('a.txt')
    g = (line.strip() for line in f)
    print(next(g))
    print(next(g))
    print(next(g))
    print(next(g))
    print(next(g))
except StopIteration:    #捕获stopiteration异常,执行关闭文件
    f.close()

异常类只能捕获指定的异常,如果不是指定的异常,则报错
例子:
s1 = 'hello'4 
try:
   int(s1)
except IndexError as e:
   print(e)
int(s1)不是指定的异常IndexError,所以报错

多分支异常
例子:
s1 = 'hello'
try:
    int(s1)
except IndexError as e:
    print(e)
except KeyError as e:
    print(e)
except StopIteration as e:
    print(e)
    
万能异常Exception
例子:
s1 = 'hello'
try:
    int(s1)
except Exception as e:
    print(e)
    
else子块,没有异常触发else
例子:
s1 = 'hello'
try:
    int(s1)
except Exception as e:
    print(e)
else:
    print('没有异常')    
    
finally子块,有没有异常都触发finally
例子:
s1 = 'hello'
try:
    int(s1)
except Exception as e:
    print(e)
finally:
    print('都会触发finally')
    
raise关键字主动触发异常
例子:
try:
    raise TypeError('类型异常')
except Exception as e:
    print(e)
    
自定义错误类型
例子
class MyError(BaseException):
    def __init__(self, msg):
        self.msg = msg

    def __str__(self):
        return self.msg

try:
    raise MyError('自定义错误类型')
except MyError as e:
    print(e)



免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python学习之异常处理

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python学习之异常处理

一、语法导致的异常,应该在程序运行前处理例子:print(输出:File "E:/python/oldboyday9/learn1.py", line 4    if     ^SyntaxError: invalid syntax注:输出
2023-01-31

Python学习 :异常处理

异常处理  什么是异常处理  - python解释器检测到错误,触发异常(也允许程序员自己触发了异常)  - 程序员编写特定的代码,专门用来捕捉这个异常(这段代码与程序逻辑无关,只与异常处理有关)  - 如果捕捉成功则进入另外一个处理分支,
2023-01-30

Python学习笔记9——异常处理

就看这篇博客吧:一篇搞定所有的异常处理,讲的很详细。异常Python中各种异常也是类,类Exception继承自类BaseException,还有其他各种异常等等,此外,通过继承BaseException或者Exception可以自定义异常
2023-01-30

python基础学习15----异常处理

异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件)。1.异常的类型异常的类型多种多样,常见的异常有:AttributeError 试图访问一个对象没有的属性,比如fo
2023-01-30

Python学习手册之Python异常和

在上一篇文章中,我们介绍了 Python 的函数和模块,现在我们介绍 Python 中的异常和文件。查看上一篇文章请点击:https://www.cnblogs.com/dustman/p/9963920.html异常和文件异常异常也叫例外
2023-01-30

python3学习之异常

##异常处理#try:#    pass#except Exception as ex:   Exception(捕获所有错误)可以换成任何异常类型,代表只捕获指定错误,# 可以写多个except#    pass##异常类型:####完整
2023-01-31

Python学习笔记整理(十七)异常处理

一、异常基础try/except:捕捉由代码中的异常并恢复,匹配except里面的错误,并自行except中定义的代码,后继续执行程序(发生异常后,由except捕捉到异常后,不会中断程序,继续执行try语句后面的程序)try/finall
2023-01-31

Python学习—异常

一.异常处理的定义  python解释器检测到错误,触发异常(也允许程序员自己触发异常)  程序员编写特定的代码,专门用来捕捉这个异常(这段代码与程序逻辑无关,与异常处理有关)  如果捕捉成功则进入另外一个处理分支,执行你为其定制的逻辑,使
2023-01-31

Python学习笔记总结(四):异常处理

一、异常基础1、基础try/except/else:【else是可选的】捕捉由代码中的异常并恢复,匹配except里面的错误,并执行except中定义的代码,后继续执行程序(发生异常后,由except捕捉到异常后,不会中断程序,继续执行tr
2023-01-31

Python之异常处理

错误包括语法错误和逻辑错误异常是程序运行时发生错误的信号,解释器追踪程序,根据错误抛出的异常。常用的异常:AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性xIOError 输入/输出异常;基本上是
2023-01-30

Python 之异常处理

一 错误和异常•错误分两种:1、语法错误1 #!/usr/bin/env python2 # -*- coding:utf-8 -*-3 # 举列4 print('hello world' # 少)5 6 def test: # 少()
2023-01-30

SpringMVC学习之JSON和全局异常处理详解

在项目上线之后,往往会出现一些不可预料的异常信息,对于逻辑性或设计性问题,开发人员或者维护人员需要通过日志,查看异常信息并排除异常,这篇文章主要给大家介绍了关于SpringMVC学习之JSON和全局异常处理的相关资料,需要的朋友可以参考下
2022-11-13

python 异常学习1

python用异常对象(exception object)来表示异常情况。遇到错误后,会引发异常。如果异常对象并未被处理或捕捉,程序就会用所谓的 回溯(Traceback, 一种错误信息)终止执行:>>> 1/0Traceback (mos
2023-01-31

Spring Boot学习入门之统一异常处理详解

前言关于之前的一篇所讲到的表单验证中提到,如果产生错误,可以得到错误的信息,但是返回值的问题却没有考虑。其中所提到的Controller:@RequestMapping(value = "/doRegister", method = Req
2023-05-31

python异常处理的哲学

所谓异常指的是程序的执行出现了非预期行为,就好比现实中的做一件事过程中总会出现一些意外的事。异常的处理是跨越编程语言的,和具体的编程细节相比,程序执行异常的处理更像是哲学。限于认知能力和经验所限,不可能达到像解释器下import this看
2023-01-30

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录