最近又在跟之前的同学一起学习python,一起进步,发现很多测试同学在初学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:拼写错误

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

上面的情况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上的一些开源项目,也可以找一些简单的来看;写一些能让自己有成就感的代码,从简单的开始,逐渐复杂,循序渐进。

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

SyntaxError: invalid syntax:这是语法错误

IndentationError: unexpected indent: 这是缩进错误

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

出错没关系,解决掉就好了,代码要多看多写,万事开头难,坚持到最后才有收获。

本文转载于https://www.py.cn/toutiao/12820.html

小白学PYTHON时最容易犯的6个错误的更多相关文章

  1. 小白学PYTHON时最容易犯的6个错误,看看你遇到过几个

    最近又在跟之前的同学一起学习python,一起进步,发现很多测试同学在初学python的时候很容易犯一些错误,特意总结了一下.其实这些错误不仅是在学python时会碰到,在学习其他语言的时候也同样会碰 ...

  2. 小白学 Python(3):基础数据类型(下)

    人生苦短,我选Python 引言 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 前面我们介绍过了数字,本篇我们接着聊另一个常用的基础数据类型:字符串. ...

  3. 小白学 Python(4):变量基础操作

    人生苦短,我选Python 引言 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 前面的文章中,我们介绍了 ...

  4. 小白学 Python(5):基础运算符(上)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  5. 小白学 Python(6):基础运算符(下)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  6. 小白学 Python(10):基础数据结构(列表)(下)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  7. 小白学 Python(16):基础数据类型(函数)(上)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  8. 小白学 Python(17):基础数据类型(函数)(下)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  9. 小白学 Python(18):基础文件操作

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

随机推荐

  1. 在centos7上使用packstack安装openstack

    简介 Packstack主要是由Redhat推出的用于概念验证(PoC)环境快速部署的工具.Packstack是一个命令行工具,它使用Python封装了Puppet模块,通过SSH在服务器上部署Ope ...

  2. Selenium处理授权框,登录框,握手框

    在Web自动化中,常常遇到三种弹框: JavaScript警告框,如alert,confirm,prompt等,如下图: 处理方法为driver.switch_to.alert().dismiss() ...

  3. 2016百度之星资格赛 Problem A(前缀积与求逆元)

    题意:给出一个字符串,每次询问给出x和y要求算出从x到y的每个字符的(ASCII 码值-28)的值的积(mod9973). 分析:首先的想法肯定是算出每个位置的前缀积,然后只要F[y]/F[x-1]即 ...

  4. JavaEE三大框架的整合

    JavaEE三大框架的整合                                                                                       ...

  5. 5.3.4 Hadoop序列化框架

    序列化框架 除了writable实现序列化之外,只要实现让类型和二进制流相互转换,都可以作为hadoop的序列化类型,为此Hadoop提供了一个序列化框架接口,他们在org.apache.hadoop ...

  6. MyBatis入门使用

    MyBatis入门使用 MyBatis简介 MyBatis是支持普通SQL查询.存储过程和高级映射的持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBati ...

  7. centos7 设置 防火墙 开机自启

    CentOS 7.0默认使用的是firewall作为防火墙,之前版本是使用iptables. 1.设置firewall开机启动 systemctl enable firewalld 2.禁止firew ...

  8. Facebook币Libra学习-3.小试牛刀第一笔交易

    我们提供了一个命令行界面(CLI)客户端来与区块链进行交互. 假设 本文档中的所有命令均假定: 您运行的是Linux(基于Red Hat或Debian)或macOS系统. 您可以稳定地连接到互联网. ...

  9. Swift 字符(Character)

    Swift 的字符是一个单一的字符字符串字面量,数据类型为 Character. import Cocoa let char1: Character = "A" let char2 ...

  10. js 删除 按钮所在的行

    <body> <table id="delte"> <caption>简易购物车</caption> <tr> < ...