python常见问题及解决方法(python怎么检查错误)

如果说写代码最害怕什么,那无疑是Bug。而对于新手来说,刚刚接触编程,在享受写代码的成就感时,往往也会被各式各样的Bug弄得晕头转向。

今天,我们就做了一期Python常见报错的分享,拯救你的代码!

01

缩进错误(IndentationError)

在Python中,所有代码都是通过正确的空格排列的。所以,无论是多出来的空格,还是缺少空格,整个代码都不会运行,并且仅返回一个错误函数。

Python代码遵循PEP8空白规范,每一级缩进使用4个空格。

错误示例

a=1
   b=2
   if a    print a

修正

a=1
   b=2
   if a    print a

02

Tab 和空格混用(TabError)

此类报错是由于同时使用制表符和空格进行编码导致的,tab键本质上是制表符,而非缩进符。由于不同文本编辑器中制表符代表的空格宽度不一,建议使用空格。

03

语法错误(SyntaxError)

语法错误的原因包含下列三种:

  1. 无效语法(invalid syntax)
  2. 标点符号遗漏,中英文符号混用,拼写错误,变量名或者函数名使用了关键字。
  3. 标识符中有无效字符(invalid character in identifier)
  4. 代码中出现了无法识别的字符,检查一下是否有多余字符或者中文字符。
  5. 检查到不完整的字符串(EOL while scanning string litera)

很多情况下是由于字符串两边的引号不统一。

错误示例

print( 'hello', 'world')

错误原因:逗号为中文逗号

报错信息:SyntaxError: invalid character inidentifier

result = (1024 (512*2)/128

错误原因:圆括号没有成对出现

报错信息:SyntaxError:unexpected EOF whileparsing

if name =="A"
   print("hello")

错误原因:忘记在if/elif/else/while/for/def/class等语句末尾添加冒号

报错信息:SyntaxError:invalid syntax

03

变量名错误(NameErro)

变量名错误是最普通也是最常会遇到的内建报错类型,经常会出现在Python变量命名上,如果找不到变量就会引发NameError。关于变量名的规则,需要牢记以下几条:

  • 变量名只能包含字母、数字和下划线,不可用数字开头;
  • 变量名不能包含空格,但可使用下划线来分隔其中的单词;
  • 不要将Python关键字和函数名用作变量名,如print;
  • 变量名应既简短又具有描述性;
  • 慎用小写字母l和大写字母O,因为容易被错看成数字1和0。

出现变量名错误,可以查看变量是否赋值,是否存在大小写不统一或者变量名写错了的情况,找到后加以修正。

错误示例

message = "Hello!"
   print(mesage)

错误原因:变量名拼写错误,误将massage拼写为masge

报错信息:NameError: name 'mesage' is not defined

05

索引错误(IndexError)

索引是项目在数组或列表中的位置,当我们尝试从列表中访问元素或从列表中不存在的索引中访问元组时,就会发生这种异常。

例如,有一个包含10个元素的列表,索引在0到9之间,如果试图访问索引10或11或更多的元素,就会产生IndexError。

错误示例

a = [1,2,3]
   print(a[3])

错误原因:列表a中不存在第4个索引,列表的索引从0开始编号

报错信息:IndexError: string index out of range

06

键错误(KeyError)

在读取字典中的key和value时,如 果key不存在,就会触发KeyError错误。

错误示例

d = {'a':1,'b':2}
   print(d['f'])

错误原因:键‘f’不存在

报错信息:KeyError: 'f'

07

类型错误(TypeError)

在程序中使用不正确或不受支持的对象类型时,会引发该错误。如果尝试调用不可调用的对象或通过非迭代标识符进行迭代,也会引发此错误。

错误示例

age=18
   print("我的年龄是" age)

错误原因:在使用“ ”做拼接的时候,必须使用字符串,或者 把数字用str()函数转化成字符串

报错信息:TypeError:can only concatenate str(not"int")to str

08

属性错误(AttributeError)

特性引用和赋值失败时会引发属性错误。

此类错误的原因是尝试访问未知的对象属性,换句话说就是找不到对应对象的属性。可以检查类中构造函数__init__()是否写正确,左右两边各两条下划线。

对于初学的小伙伴来说,代码经常出现Bug并不代表着你学得不好。若是将一个个Bug看作游戏里小怪,那么消灭Bug的过程又何尝不是升级的过程呢?

所以,努力加油吧!消灭Bug!

(0)

相关推荐

  • 使用Python查看版本号解决方法!

    使用Python查看版本号解决方法! 操作方法 01 点击左下方的命令栏,打开命令提示符. 02 在命令提示符中输入命令.如图所示. 03 回车确定得到版本号.如图所示. 04 进入python命令s ...

  • 豌豆荚Android版常见问题及解决方法介绍

    新买了一个手机,系统是Android系统但里面带有豌豆荚,但我不知道豌豆荚如何使用,遇到一些问题也不知道用豌豆荚如何解决,所以就到网上搜了一下豌豆荚Android版常见问题及解决方法,用的着的朋友可以 ...

  • 小米系统公测版常见问题有哪些?小米系统app常见问题及解决方法汇总

    接下来带给大家的是小米系统app常见问题及解决方法汇总,不用刷机也能使用miui系统的小米系统app公测版终于发布啦~在使用过程中难免会遇到问题,请参考下文吧。 --锁屏 Q:锁屏出现响应慢、卡、双响 ...

  • 10个iPad Air最常见问题及解决方法汇总介绍

    苹果去年推出的iPad Air采用了全新的窄边框设计,拥有更加轻薄的机身以及强劲的性能,所以仍然是目前世界上最好的10英寸平板电脑。不过,它显然并不完美,一些硬件及软件的小问题经常会给我们带来困扰,所 ...

  • 17种Mac常见问题的解决方法

    Mac是非常可靠稳定的电脑,但这并不意味着它们就不会出错,不会坏,不会犯傻。我们总结出了一些Mac的“啊哦”的镜头,并告诉你如何对付它们并防止再次发生。 没有电脑是永远不会出问题的。即使是Mac也有犯 ...

  • 苹果mac电脑17种常见问题的解决方法

     随着时代的发展,苹果mac以它美观的外表以及系统的稳定抓住越来越多用户的心。 Mac是非常可靠稳定的电脑,但这并不意味着它们就不会出错,不会坏,不会犯傻。我们总结出了一些Mac的“啊哦”的镜头,并告 ...

  • ipad air常见问题及解决方法汇总

    绿茶小编胖胖带来了ipad air常见问题及解决方法汇总,在使用ipad air的过程中有可能会遇到一些故障,大家可以参考下文步骤自行解决,希望能帮助到大家。 1.没有声音 如果你发现iPad Air ...

  • 网络管理中的常见问题和解决方法

    网络管理是使网络可靠.安全.高效运行的保障.现代网络管理集中了通信技术和信息处理技术发展的各方面成果,网络的不同管理功能中发挥作用,共同实现网络的管理任务. 网络管理有很多技巧和窍门,下面介绍一些网络 ...

  • bilibili怎么使用 哔哩哔哩视频的常见问题与解决方法

    乐视举报b站胜诉的消息,让很多网友更加关注弹幕网站:bilibili的命运了,而不少网友也是从此次事件对bilibili路人转粉.不过,bilibili怎么使用呢?今天,小编就为大家整理一下bilib ...

  • 华为模拟器 ENSP2.0常见问题及解决方法

    常见问题及解决方法: [报端口绑定错误] 单击 菜单 - 工具-选项 - 服务器页面,将里面的三个端口号分别改成 54012, 54013 ,54014然后点 应用 - 确定,重启eNSP.如果重启后 ...