截图来自Python小课
文|仟樱雪
当你写出的代码,在终端没有运行出你想要的结果,而是出现了一大段莫名其妙的字符,这就是报错,在Python中最常见的是各种报错,一旦报错,就各种懵逼,无所适从。
本文主要列举一些常见的报错,以及报错处理。
1、使用中文的符号:中文括号、中文冒号、中文引号等等
例如:打印 “1+1”
print(1+1)#中文反括号
运行结果:
本地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"
截图来自百度
百度搜索说明:
看红框中的小字:“请确保代码行内没有夹杂中文的空格,tab等,非文字字符"...
不用点进去,即可做出合理的猜测:再结合指针指向的位置,其实print 函数英文没有写错,那这个括号是不是写成中文了?
结果纠错:将中文反括号,修改成英文的反括号,即可运行成功。
2、漏写固定格式的结构,例如:漏写if语句中的冒号等
例如:打印女王的烦恼,天气晴朗则和唐僧见面
weather=input('请问:如果今天晚上,天气是晴朗,还是阴雨?')if weather == '晴朗' #漏掉if语句的冒号 print('和唐僧约会')
运行结果:
本地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
共同学习,写下你的评论
评论加载中...
作者其他优质文章