1. 忘记写冒号
在 if、elif、else、for、while、class、def 语句后面忘记添加“:” if spam == 42
print('Hello!')
2. 误用 “=” 做等值比较 “=”是给变量赋值,“==”才是判断两个值是否相等: score = 60
if score = 60:
print ('passed')
改正: score = 60
if score == 60:
print ('passed')
3. 变量没有定义: if age >= 18:
print ('adult')
print ('END')
会导致:NameError: name ‘age’ is not defined. 改正: age = 20
if age >= 18:
print ('adult')
print ('END')
4. 字符串与非字符串连接 错误: num = 12
print('I have ' + num+ ' apples.')
非字符串和字符串连接的时候,要将非字符串转换为字符串类型之后才能连接,改正: num = 12
print('I have ' + str(num)+ ' apples.')
5. 列表的索引位置 习惯性地认为列表元素的位置是从1开始的: spam = ['cat', 'dog', 'mouse']
print(spam[3])
列表元素的位置是从0开始的,所以第3个元素“mouse”的索引位置是2,改正: spam = ['cat', 'dog', 'mouse']
print(spam[2])
6. 使用自增 “++” 自减 “—” 学过c语言或者Java的人会很习惯使用i++或者i—,但在Python中是没有自增自减操作符的: spam = 0
spam++
这时可以使用 “+=” 来代替 “++”,改正: spam = 0
spam += 1
7. 使用关键字命名变量 Python 3中一共33个关键字: False,None,True,and,as,assert,break,class,continue,def,del,elif,else,except,finally,for,from,global,if,import,in,is,lambda,nonlocal,not,or,pass,raise,return,try,while,with,yield 自定义变量时,变量名不能和这些关键字重复。 8. 索引元素位置时忘记调用 len 方法 通过索引位置来获取列表元素时,忘记要先使用 len 函数来获取列表的长度: fam = ['dad', 'mom', 'son'] for i in range(fam): print(fam[i])
改正: fam = ['dad', 'mom', 'son'] for i in range(len(fam)): print(fam[i])
9. 函数中的局部变量赋值前被使用 num = 42 def myFunction():
print(num)
num = 100 myFunction()
第一行定义了一个全局变量num,同时函数myFunction( )也定义了一个同名的局部变量,但程序执行时是先查找局部变量的,所以在函数中找到num之后就不到外部查找了,此时就会出现print的时候变量num还没赋值的错误。 10. 缩进问题 和其他语言的语法最大的不同就是,Python不能用括号来表示语句块,也不能用开始或结束标志符来表示,而是靠缩进来区分代码块的。 常见的错误用法: (1) print('Hello')
print('World!')
错误是第二行的缩进会导致两个print语句是包含和被包含的关系,但他们两者是属于同一个代码块的,所以应该写成; print('Hello')
print('World!')
(2) if spam == 42:
print('Hello')
print('World!')
错误是第三行的缩进,改正的方法有两种,一是如果两个print语句是属于同一代码块的,应该改正为 if spam == 42:
print('Hello')
print('World!')
二是如果第三行的print语句是和if语句是同一级的,则改正为 if spam == 42:
print('Hello') print('World!')
(3)在Python 3中,缩进的时候,不能Tab和空格混用,每个缩进层次应该选择只使用Tab或者只使用空格。

Python新手最容易犯的十大错误的更多相关文章

  1. Spring常犯的十大错误,你踩过吗?

    1.错误一:太过关注底层 我们正在解决这个常见错误,是因为 "非我所创" 综合症在软件开发领域很是常见.症状包括经常重写一些常见的代码,很多开发人员都有这种症状. 虽然理解特定库的 ...

  2. 使用 Spring Framework 时常犯的十大错误

    Spring 可以说是最流行的 Java 框架之一,也是一只需要驯服的强大野兽.虽然它的基本概念相当容易掌握,但成为一名强大的 Spring 开发者仍需要很多时间和努力. 在本文中,我们将介绍 Spr ...

  3. Spring 常犯的十大错误,答应我 打死都不要犯好吗?

    1. 错误一:太过关注底层 我们正在解决这个常见错误,是因为 “非我所创” 综合症在软件开发领域很是常见.症状包括经常重写一些常见的代码,很多开发人员都有这种症状. 虽然理解特定库的内部结构及其实现, ...

  4. Spring 常犯的十大错误,(收藏后)永远不要在犯了

    1. 错误一:太过关注底层 我们正在解决这个常见错误,是因为 “非我所创” 综合症在软件开发领域很是常见.症状包括经常重写一些常见的代码,很多开发人员都有这种症状. 虽然理解特定库的内部结构及其实现, ...

  5. Spring 常犯的十大错误,这坑你踩过吗?

    阅读本文大概需要 9 分钟. 1.错误一:太过关注底层 我们正在解决这个常见错误,是因为 “非我所创” 综合症在软件开发领域很是常见.症状包括经常重写一些常见的代码,很多开发人员都有这种症状. 虽然理 ...

  6. Spring 常犯的十大错误,打死都不要犯!

    原文:https://www.toptal.com/spring/top-10-most-common-spring-framework-mistakes 作者:Toni Kukurin,译者:万想 ...

  7. Python开发者最常犯的10个错误

    Python是一门简单易学的编程语言,语法简洁而清晰,并且拥有丰富和强大的类库.与其它大多数程序设计语言使用大括号不一样 ,它使用缩进来定义语句块. 在平时的工作中,Python开发者很容易犯一些小错 ...

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

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

  9. 小白学PYTHON时最容易犯的6个错误

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

随机推荐

  1. [CF 1238F] The Maximum Subtree 树DP

    题意 给定一颗树,求这个树的最大子树,且这个子树是一个good-tree. good-tree的定义是:每个节点可以表示成一个数值区间,而树上的边表示两个点表示的数值区间相交. 题解 通过分析可以发现 ...

  2. 织梦网站dedecms防止挂马的思路

    DedeCms做为国内使用最为广泛使用人数最多的CMS之一,经常爆出漏洞,每个漏洞的爆出,影响都是一大片,轻则被人挂广告.弹框,重则服务器成为肉机,宝贵数据丢失.那么有什么办法可以提高DedeCms的 ...

  3. 并查集+启发式合并+LCA思想 || 冷战 || BZOJ 4668

    题面:bzoj炸了,以后再补发 题解: 并查集,然后对于每个点记录它与父亲节点联通的时刻 tim ,答案显然是 u 到 v 的路径上最大的 tim 值.启发式合并,把 size 小的子树往大的上并,可 ...

  4. 如何制作chrome浏览器插件之一

    方法如下: 1.创建一个单独的文件夹,比如说为百度贴吧开发一个插件,就叫TiebaAddion.之后在这个文件夹里创建一个名字为"manifest.json"的文件,在里面写上如下 ...

  5. Mac的MySQL无法启动的原因

    一.由于Mac OS X的升级或其他原因可能会导致一个错误: Warning:The /usr/local/mysql/data directory is not owned by the 'mysq ...

  6. linux学习:【第1篇】之安装vmware+Centos 6.9

    vmware+CentOs 6.9的安装步骤 一.安装步骤 linux分区 登录用户名和密码 登录用户名和密码后安装成功 二.远程控制Xshell的安装

  7. Acwing-281-硬币(背包)

    链接: https://www.acwing.com/problem/content/283/ 题意: 给定N种硬币,其中第 i 种硬币的面值为Ai,共有Ci个. 从中选出若干个硬币,把面值相加,若结 ...

  8. docker和Dockerfile

    目录: 1.docker为什么会出现? 2.docker的理念 3.容器化技术 4.docker三要素 5.docker安装 6.docker帮助命令 7.Docker阿里云镜像加速器配置. 8.do ...

  9. 【杂题】[AGC034D] Manhattan Max Matching【费用流】

    Description 有一个无限大的平面,有2N个位置上面有若干个球(可能重复),其中N个位置是红球,N个位置是蓝球,红球与蓝球的总数均为S. 给出2N个位置和上面的球数,现要将红球与蓝球完美匹配, ...

  10. cogs1619. [HEOI2012]采花 x

    1619. [HEOI2012]采花 ★★☆   输入文件:1flower.in   输出文件:1flower.out   简单对比时间限制:5 s   内存限制:128 MB [题目描述] 萧薰儿是 ...