编程行业有句话叫写程序就是写 bug。当然有 bug 的程序是没法上线的,所以我们就要找出这些 bug 并解决。
有的 bug 是程序执行错误,比如程序在运行时期出现内存崩溃。有的 bug 是程序逻辑错误,也就是语法和程序都没问题,但是逻辑结果不符合。
无论是程序执行错误还是逻辑错误,导致的原因无外乎是代码编写没有考虑全面的问题,但是在我们一开始编写代码时,不可能考虑的面面俱到。比如:我们在做除法时,忘记处理除数不能为 0 的情况就会导致程序执行错误;我们在创建对象的时候,使用了循环引用(Python 的内存管理是用引用计数机制,没有解决循环引用的问题)导致内存泄漏,最后导致内存耗光出现内存分配失败;我们写文件的时候磁盘已经写满,导致写文件失败;我们在做网络编程的时候,出现分配套接字资源失败,或者在通信过程中出现网络问题,导致通信失败;我们在处理用户输入的时候,没有考虑到用户的各种异常输入,比如我们要的是数字,用户输入的是字符串等等。
当然程序员在写程序的时候就算考虑的面面俱到,也不可能一次性就写出无 bug 的程序,我们本章节就来学习如何查找 bug,并解决 bug。
错误处理的两种方式
try、except和finally
print 打印方式
调试
打日志
打卡第 38 天