Python小课笔记--Python报错处理

《Python小课笔记--Python报错处理》 截图来自Python小课 文|仟樱雪

当你写出的代码,在终端没有运行出你想要的结果,而是出现了一大段莫名其妙的字符,这就是报错,在Python中最常见的是各种报错,一旦报错,就各种懵逼,无所适从。

本文主要列举一些常见的报错,以及报错处理。

1、使用中文的符号:中文括号、中文冒号、中文引号等等

例如:打印 “1+1”

print(1+1)#中文反括号

运行结果:

《Python小课笔记--Python报错处理》 本地Python环境运行

报错本质:
(1)第1行文字,前面显示的是这个py文件的路径,红框里的 “line 1” 是指第1行代码写错了。
(2)假如终端显示的是”line 13″的话,就是说前面12行都没错,从第13行开始出错的。
(3)第2行文字:print(’1+1’) ,是写的代码,并且在print 之后有个小的三角指针,这意味着是这个地方出错了。
(4)第3行文字:SyntaxError: invalid character in identifier。
这句话是计算机告诉我们,程序不能运行下去的理由,也就是报错的理由;

可以去网上百度搜索”SyntaxError: invalid character in identifier” 《Python小课笔记--Python报错处理》 截图来自百度

百度搜索说明:
看红框中的小字:“请确保代码行内没有夹杂中文的空格,tab等,非文字字符”…
不用点进去,即可做出合理的猜测:再结合指针指向的位置,其实print 函数英文没有写错,那这个括号是不是写成中文了?
结果纠错:将中文反括号,修改成英文的反括号,即可运行成功。

2、漏写固定格式的结构,例如:漏写if语句中的冒号等
例如:打印女王的烦恼,天气晴朗则和唐僧见面

weather=input('请问:如果今天晚上,天气是晴朗,还是阴雨?')
if weather == '晴朗'      #漏掉if语句的冒号
    print('和唐僧约会')

运行结果:

《Python小课笔记--Python报错处理》 本地Python环境运行

报错本质:
(1)第1行文字,前面显示的是这个py文件的路径,红框里的 “line 2” 是指第2行代码写错了。
(3)第2行文字:if weather == ‘晴朗’ ,是写的代码,并且在【==】之后有个小的三角指针。这意味着是这个地方出错了。
(4)第3行文字:SyntaxError: invalid syntax
程序不能运行下去的理由:语法错误
结果纠错:反查if函数的语法,会发现漏掉了if语句后面的英文冒号–【;】

3、人为主观意识错误,例如:前后输入的变量名称不一致
例如:计算a=5,b=8,计算a+b

a=5
b=8
print(a+bb)   #变量名称输入错误

运行结果:

Traceback (most recent call last):
  File "D:/Python_charm/hello.py", line 3, in <module>
    print(a+bb)
NameError: name 'bb' is not defined

报错本质:
(1)第1行文字,前面显示的是这个py文件的路径,红框里的 “line 3” 是指第3行代码写错了;
(3)第2行文字: print(a+bb),是写的代码模块;
(4)第3行文字:NameError: name ‘bb’ is not defined
程序不能运行下去的理由:出现未命名的变量
结果纠错:将bb变量修正成b变量,即可运行成功。

(注:2018.11.23,Python编程,捡破烂儿的笨小孩学习小记,有用就给个小心心哟,后续持续更新ing)

    原文作者:仟樱雪
    原文地址: https://www.jianshu.com/p/7a12b2a591ff
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞