欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

python宇晨_Python 学习第11天 yield 和异常处理

发布时间:2024/10/14 python 37 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python宇晨_Python 学习第11天 yield 和异常处理 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

主要功能:把一个函数变成生成器

复习:将列表变成生成器a=iter([i for i in range(10)])

a.next()

使用yield将函数变成生成器,保存函数执行状态

yield简单代码

使用yield可以控制函数的执行过程------------------------(非常重要,后续补充)

异常处理:

1.常见的异常处理和简单说明

1)AttributeError                    视图访问一个对象没有的树形,对象没有该属性,会报错

2)IOError                              输入/输出异常;基本上是无法打开文件

3)ImportError                        无法引入模块或包,基本上是路径问题或者名称错误

4)IndentationError                 语法错误(的子类);代码没有正确对齐

5)IndexError                           下标索引超出序列长度,长度为3,却试图访问第5个元素

6)KeyError                              试图访问字典里不存在的键

7)KeyboardIntereupt                Ctrl+C被按下

8)NameError                             使用一个还未被赋予对象的变量

9)SyntaxError                            python代码非法,代码不能编译(语法错误)

10)TypeError                             传入对象类型与要求不符合

11)ValueError                             传入一个调用者不期望的值,即使值的类型是正确的

12)UnboundLocalError               试图访问一个还未被设置的局部变量,基本上是由于另有一个同名的全局变量,导致你以为访问它

异常处理捕捉和处理:

常见异常处理

自定义异常处理:

首先自定义一个类,并继承异常的父类

finally:无论try是否抛出异常永远执行finall中的代码,通常用来执行文件关闭,断开服务器连接等功能。不管是否有异常,都会执行finally之后的代码

finally最终执行的代码

else:只有没有异常的情况下,才会执行else后面的代码

else代码执行

打印出,出错的信息:

出错信息

在异常后面添加一个变量(变量名可以随便定义,图中使用的是e)

报错信息如下:

异常捕捉和报错信息显示

异常捕捉是抓不到语法和缩进的错误。因为python在执行过程中,首先会先转成pyc格式的代码,在此时就已经检测了语法和缩进的样式问题。其他都是在执行过程中被捕捉到的。可以将上面的两个理解成在代码执行之前就已经被pyc给检测出来了。

总结

以上是生活随笔为你收集整理的python宇晨_Python 学习第11天 yield 和异常处理的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。