100offer
100offer
3月前 · 6 人阅读

  发现很多测试同学在初学python的时候很容易犯一些错误,特意总结了一下。其实这些错误不仅是在学python时会碰到,在学习其他语言的时候也同样会碰到。

  错误1: 缩进

  python是强制缩进的语言,很多同学在初次接触python时可能会不习惯,缩进老是犯错。比如


 Python 2.7.12 (default, Sep 17 2016, 13:47:40)

[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>     good = "ok"
  File "<stdin>", line 1
    good = "ok"
    ^
IndentationError: unexpected indent



  这种错误一般会提示IndentationError,最后根据错误所在行一般都能够很快的解决问题。

  错误2: 中英文符号

  很多初学者是分不清中英文符号的区别的,比如说:这是英文的冒号,而:这个冒号是中文的。乍一看长得差不多,但实际上确实不同的字符。比如


 >>> x = 0

>>> if x == 1:
  File "<stdin>", line 1
    if x == 1:
             ^
SyntaxError: invalid syntax



  上面的错误很明显,语法错误,冒号有问题。作为初学者,下面这些符号在输入的时候你可能需要警惕一些

  英文逗号

  英文冒号

  英文小括号

  英文中括号

  符号不准确的情况下,一般python解释器会提示SyntaxError,遇到这个错误不要怕,想办法解决就好。

  错误3:拼写错误

  因为我们的母语不是英文,所以很多时候我们会把单词拼写错误而觉察不到。比如 


 >>> word = "hello world"

>>> print(world)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'world' is not defined



  上面的情况python抱怨道:world这个变量没有定义, 很显然我们定义变量名是word。一些同学甚至会将hello world错拼成是hello word,可见对微软的office套件爱的深沉。

  错误4:代码块忘了冒号

  python的很多代码块结构是需要冒号的,这个我最初非常不习惯,老是忘记写,比如 


>>> if 1 == 2

  File "<stdin>", line 1
    if 1 == 2
            ^
SyntaxError: invalid syntax




  这里if后面要跟冒号来引出下面的代码块。忘记冒号的时候一般会报语法错误。

  错误5: IDE综合症

  有些同学喜欢一开始就使用IDE,因为一些不错的IDE是有语法错误提示的,所以当你敲错了以后,代码编辑器内可能充斥着红色或黄色的波浪线,不过有时候这些线可能不是很准确,就导致大家有些手足无措,不敢放心大胆敲代码,渐渐的挫败感累积,然后放弃。

  另外很多同学喜欢在IDE内直接运行python代码,导致很多时候传参不便,无法得到想要的结果。

  其实新手可以先土一点,尝试不用IDE,等熟练一些了再使用也不迟。

  错误6:只看不写或者只写不看

  有些同学只看书,不写代码,结果除了疑惑越来越多以外,代码能力提升速度其实有限

  有些同学只写代码,不看别人写的代码,结果一些常见套路不会,进步速度也有限

  代码其实要多看,多看别人写的代码,python标准库里的代码尽管不容易,但是可以看一下,github上的一些开源项目,也可以找一些简单的来看;写一些能让自己有成就感的代码,从简单的开始,逐渐复杂,循序渐进。

  综上,读完这边文章,你应该了解这些点:

  A.SyntaxError: invalid syntax:这是语法错误。

  B.IndentationError: unexpected indent: 这是缩进错误。

  C.NameError: name 'world' is not defined: 这是变量没定义。

  D.出错没关系,解决掉就好了。

  E.代码要多看多写。

  F.万事开头难,坚持到最后才有收获。

收藏 0
代码 python 冒号 错误 world ide
评论 ( 0 )