美文网首页工具癖每天写1000字python学习
Python小课笔记--Python报错处理

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

作者: 仟樱雪 | 来源:发表于2018-11-23 13:59 被阅读16次
    截图来自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=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)

    相关文章

      网友评论

        本文标题:Python小课笔记--Python报错处理

        本文链接:https://www.haomeiwen.com/subject/nerxqqtx.html