继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

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

慕虎7371278
关注TA
已关注
手记 1125
粉丝 201
获赞 871

webp

截图来自Python小课

文|仟樱雪
当你写出的代码,在终端没有运行出你想要的结果,而是出现了一大段莫名其妙的字符,这就是报错,在Python中最常见的是各种报错,一旦报错,就各种懵逼,无所适从。
本文主要列举一些常见的报错,以及报错处理。
1、使用中文的符号:中文括号、中文冒号、中文引号等等
例如:打印 “1+1”


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

运行结果:


webp

本地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"

webp

截图来自百度

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

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

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

运行结果:


webp

本地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=8print(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变量,即可运行成功。



作者:仟樱雪
链接:https://www.jianshu.com/p/7a12b2a591ff


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP