鱼C论坛

 找回密码
 立即注册
查看: 3921|回复: 16

[技术交流] 《零基础入门学习Python》33讲内容归纳

[复制链接]
发表于 2015-10-15 20:48:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
小牛有话说:
        各位鱼油,大家好。我是小牛,如果您已经看完或者正在看鱼神的《零基础入门学习Python》视频,想随时复习前面的知识点却又不想花太多时间和精力重翻视频,来这里《零基础入门Python学习》整理瞅瞅小牛呕心做的的视频内容的总结吧^_^,如果觉得有用的话,可以点击所属淘贴右上角的“订阅”按钮,这样以后就能够随时看到小牛做的最新的整理了。
        另外,小牛十一回了趟家,结果就将更新耽搁了,这里对关注小牛帖子鱼油们说声抱歉了,后面小牛会尽力加快更新速度,争取在10月底更新到类和对象部分。
本期主要内容导读:
        这一期我们归纳一下鱼神第三十三讲“异常处理:你不可能总是对的2”。这一期里面鱼神主要就接着前面就如何扑捉异常问题并输出相关信息进行了讲解,涉及到了try except 和try finally语句实现上述问题的用法。下面我们就来详细介绍一下各个知识点吧~~~~~~
1. try except语句的用法,用来检测一段代码内出现的异常并将其归类输出相关信息,首先是try: 被检测代码段  except Exception[as reason]: 相关信息,举例说明:
>>> try:
    f = open('该文档不存在')
    print(f.read())
    f.close()
except OSError:
    print('文件出错了T_T')   

文件出错了T_T
        当然,我们也可以在except Exception 加上 as reason将程序检测到的出错的信息输出,举例说明:
try:
    f = open('该文档不存在')
    print(f.read())
    f.close()
except OSError as reason:
    print('文件出错了T_T')
    print('出错原因是%s'%str(reason))

文件出错了T_T
出错原因是[Errno 2] No such file or directory: '该文档不存在'
        当然,可以增加多个except语句,提取代码段不同的异常问题,举例说明:
try:
    1 + '1'
    f = open('该文档不存在')
    print(f.read())
    f.close()
except OSError as reason:
    print('文件出错了T_T')
    print('出错原因是%s'%str(reason))
except TypeError as reason:
    print('求和出错了T_T')
    print('出错原因是%s'%str(reason))

求和出错了T_T
出错原因是unsupported operand type(s) for +: 'int' and 'str'
        但是需要注意程序检测到第一个异常后即停止运行,在except中找到相应输出语句,如果except未包含时,则直接曝出异常,
try:
    fishc
    1 + '1'
    f = open('该文档不存在')
    print(f.read())
    f.close()
except OSError as reason:
    print('文件出错了T_T')
    print('出错原因是%s'%str(reason))
except TypeError as reason:
    print('求和出错了T_T')
    print('出错原因是%s'%str(reason))

Traceback (most recent call last):
  File "D:/Python34/test/033/01.py", line 2, in <module>
    fishc
NameError: name 'fishc' is not defined

        另外,可以将Exception信息放在一个except语句下面,举例说明:
try:
    fishc
    1 + '1'
    f = open('该文档不存在')
    print(f.read())
    f.close()
except (OSError,TypeError,NameError) as reason:
    print('出错了T_T')
    print('出错原因是%s'%str(reason))
出错了T_T
出错原因是name 'fishc' is not defined
        甚至except语句连Except都不要了,则程序检测到异常就会执行except下的语句,但不推荐使用:
try:
    fishc
    1 + '1'
    f = open('该文档不存在')
    print(f.read())
    f.close()
except:
    print('出错了T_T')

出错了T_T

2. try finally语句,一般是在try except语句下面补充,用于程序检测到异常后仍能执行的语句:
try:
    fishc
    1 + '1'
    f = open('新文档.txt',wt)
except (OSError,TypeError,NameError) as reason:
    print('出错了T_T')
    print('出错原因是%s'%str(reason))
finally:
    f = open('新文档.txt','wt')
    f.write('我爱鱼C论坛!')
    f.close()
    f = open('新文档.txt','rt')
    print(f.read())
    f.close()

出错了T_T
出错原因是name 'fishc' is not defined
我爱鱼C论坛!
3. raise语句,raise Exception,引入一个异常,举例说明:
>>> raise NameError
Traceback (most recent call last):
  File "<pyshell#12>", line 1, in <module>
    raise NameError
NameError

>>> raise ZeroDivisionError('除数是0')
Traceback (most recent call last):
  File "<pyshell#14>", line 1, in <module>
    raise ZeroDivisionError('除数是0')
ZeroDivisionError: 除数是0

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
小甲鱼 + 5 + 5 + 3 热爱鱼C^_^

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-10-15 23:09:00 | 显示全部楼层
青牛不错哈~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-16 10:44:28 | 显示全部楼层
本帖最后由 醉酒青牛 于 2015-10-16 10:54 编辑


哇,感谢鱼神支持,小牛又满血复活了,至少要更新到类和对象部分再说 !!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-10-18 15:50:40 | 显示全部楼层
棒棒哒!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-11-3 08:11:50 | 显示全部楼层
加油~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-11-4 22:25:57 | 显示全部楼层
支持
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-11-7 17:19:59 | 显示全部楼层
:funk:
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-12-1 19:19:03 | 显示全部楼层
如果没有异常问题  这个基本就没什么用了把  不知道这个具体会有什么用。如果有几千行的代码,怎么办?重新写代码吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-12-2 11:14:39 | 显示全部楼层
cjfj114 发表于 2015-12-1 19:19
如果没有异常问题  这个基本就没什么用了把  不知道这个具体会有什么用。如果有几千行的代码,怎么办?重新 ...

异常是无处不在的,写代码第一个阶段是自己能按照程序要求操作运行,最后一个阶段是所有人都能随心所欲运行,这两者之间最大的区别就是是否有异常处理。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-4-15 14:36:44 | 显示全部楼层
后面的视频还有么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-4-15 14:37:52 | 显示全部楼层
学习的好吃力。怎么练习,怎么上手!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-4-15 14:39:33 | 显示全部楼层
tuple 元组  序列 list  集合 set .
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-4-15 14:42:31 | 显示全部楼层
工厂函数,set1={1,3,2.3,4,5,3,3,4}
set1
{1,3,2,4,5}
list(set1)
[1,2,3,4,5]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-7-14 09:39:30 | 显示全部楼层
牛哥是好人,看牛哥的笔记,又学习了一次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-8-22 11:19:27 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-8-22 11:20:34 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-9-19 10:01:13 | 显示全部楼层
exception
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-19 15:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表