13.困难重重

    慢慢的 开始有些感悟了 总感觉自己写程序有些吃力 本以为自己写好了一段代码 并且经过自己的认真检查之后,运行之后却发现事与愿违,一大堆Bug出现。此时的你内心无比崩溃,但是面对这么多行的代码,该怎么去找到错误的地方,并且修改他呢?

    确实在很多情况下,写代码不是一件难的事情,而真正难的是要你去读懂代码的逻辑以及能够快速处理Bug的能力,在设计代码的时候脑海里能有一个很好的结构,使得程序有很好的规范性,不会一团乱糟。修改起来就像无头苍蝇一样。

其实在PyCharm中有专门用来调错的功能 ---- Debug

这个功能很重要 在日常工作中基本不可缺失

在你写好代码之后 右击运行debug 程序会在你错误的地方停留下来。

当你得知你错误的地方之后 你可以进一步的确定问题所在 并打下断点。

具体操作和用法需要时间的累计和经验。

 

在程序内部捕捉异常

这个问题很常见,为什么说要捕捉异常呢,在处理一个实际的业务问题中,难免会出现各种各样的问题,有些问题是在我们意料之外,有些问题是在我们计划之中

但如果说我们没有捕捉异常这一功能,对程序的设计和复杂度就更高了。

列举常见的8类错误 但是远不止这8类错误:

1.SyntaxError:语法错误

2.NameError:试图访问的变量名不存在

3.IndexError:索引错误,使用的所以你不存在,常为索引超出序列范围

4.KeyError:使用了映射中不存在的关键字(键)时引发的关键字错误

5.TypeError:类型错误,内建操作或是函数应于在错误类型的对象时会引发类型错误

6.ValueError:值错误,传给对象的参数类型不正确,例如给int()函数传入了字符串数据类型

7.AttributeError:属性错误,特性引用和赋值失败时会引发属性错误

8.IOError:输入输出错误

写法:

1.单个异常捕捉

try:
    n = a
except NameError:
    print('访问的变量名不存在')

 2.多个异常捕捉 并且打印具体的异常信息

try:
    ...
except Error1  as e:
    print(e)
except Error2 as e:
    print(e)

3.完整结构

try:
    ...
except exception1:
    ...
except exception2:
    ...
except:
    ...
else:
    ...
finally:
    ...

执行的过程为:

 

 4.自定义抛出异常

raise 抛出对象

这里这种方法本身不太具备实际意义 可以理解为Python已经写好了这个对象,如果你想去自定义一个对象让后将他抛出,也是ok的,but我们没必要这么去做。

 

posted @ 2021-12-28 14:31  锋芒毕露的蜘蛛  阅读(103)  评论(0编辑  收藏  举报