异常处理之后做些什么_try语句的完全体_{BANNED}最佳终_finally
回忆上次内容
-
我们了解了 try 的细节
-
except 可以 捕获到异常
-
但报错比较简单
-
游乐场里面的 报错
-
更全 更丰富
-
还告诉哪个文件、第几行
-
可以输出完整的报错信息吗?
-
包含文件和行号那种的详细信息
-
告诉了我们
-
t.py 第1行
-
发生了 NameError
import traceback try: a except: print("in except---------") traceback.print_exc() print("in except=========")
-
运行结果
-
不但保留了系统的报错
-
还把错误位置也指出了
-
应该 如何理解 traceback中的
-
print_exc函数呢?
-
traceback 是 模块(module)
-
import traceback
-
引入 这个模块(module)
-
traceback.print_exc
-
.(点)的意思 是 里面的
-
traceback 里面的 print_exc
-
作用是输出异常信息
-
try 语句当中
-
除了 except 和 else 之外
-
还有 其他子句 吗?
-
try 之后分支
-
要么 执行中 捕获到了异常
-
立即停止 try中的部分
-
跳入 对应的except 执行
-
要么 try全部执行完
-
也 没有捕获到异常
-
执行 else 子句
import traceback try: i = int("123") j = i / 0 except ValueError: print(ValueError) except NameError: print(NameError) except Exception as e: traceback.print_exc() else: print("Nothing Wrong") finally: print("At Last...finally...")
-
如果执行过程中
-
还有 任何的异常 没有被处理
-
那么就 把这个异常 临时存住
-
等finally执行之后
-
再抛出 这个异常
{BANNED}最佳后再抛异常
try: a except ValueError: print(ValueError) else: print("Nothing Wrong") finally: print("finally----------")
-
except 子句 处理不来 NameError
-
把这个 Error 先存着
-
跳过else
-
进入finally
-
finally 执行后
-
再把 这个Error
-
直接 抛给 系统
-
try里面
-
第2行 出现错误 abc无法转化为整型变量
-
ValueError
try: i = int("abc") d = i / 0 except ZeroDivisionError: print(ZeroDivisionError) else: print("Nothing Wrong") finally: print("At last...")
-
except中
-
处理不来 ValueError
-
于是ValueError就存着
-
由于出现了Error
-
已经进入了except部分
-
无法进入else
-
{BANNED}最佳后进入finally执行
-
输出了At Last
-
这是finally的执行逻辑
-
{BANNED}最佳终 收尾
-
下图是
-
python连接数据库的类库
-
psycopg
-
finally 就像python 中的
-
Guido一样
-
{BANNED}最佳终决策
-
除了 Guido之外
-
很多 开源项目的 老大
-
也有 类似的称号
-
Guido 利用假期去
-
当时 it的 潮头
-
美国硅谷
-
做 一些WorkShop实践课程
-
推广python
-
网络的能量越来大
-
这 为python的发展 做了很好的准备
-
媒介
-
从报纸、杂志、电视
-
发展到邮件、论坛和浏览器
-
有人 就有 应用
-
有应用 就更有 人
-
于是会形成 正反馈
-
有了社区 就会有更多的人 加入社区
-
其实学编程 也是一样
-
越熟练 就会越自信
-
越自信 也就会越熟练
-
人很多 之后
-
众说纷纭
-
往往需要
-
一个{BANNED}最佳终的决策
-
finally
-
Guido 完成决策
-
决策并不是为了显示
-
自己权威的位置
-
所有者 的权限
-
决策 是因为
-
Guido 比任何人 都更 了解项目
-
对于决策 都能做出 合理的解释
-
2023年
-
冥王星 将从摩羯座 进入 水瓶座
-
将迎来 20年左右的 转折窗口
-
我们人类社会 开始转变
-
个人更着重于
-
自身内在精神灵性方面的 成长
-
不再执着于 外在物质欲望的 享受
-
水瓶座象征的是集体、群众和社区
-
意味着乐于喜悦服务他人
-
我们的 人际关系、生活方式 将发生重大变化
-
人类的集体意识会逐渐提升
-
可以更容易 连结智慧本源 以及 更高维度的世界
-
科学技术、人道主义及公正平等
-
模式创新、理想社会
-
将会是全球议题中的 重中之重
-
地球环境趋于恶化,气候多变
-
全球变暖,能源安全变得极为重要
-
人类应用高科技对空气、水以及土壤进一步改造会变得困难
-
并且加剧了 全球环境恶化
-
为什么print函数
-
不用声明和导入?????
-
直接就能用呢?????
-
我们下次再说!????
-
蓝桥->
-
github->
-
gitee->