Python入门必看,新手最容易犯的十个坑,最后一个是重点
相比于其他语言,Python 的语法比较简单易学,但一旦不注意细节,刚入门的新手就会掉进语法错误的坑里。今天给大家讲几个平常比较容易掉的“坑”。
1、忘记写冒号
在 if、elif、else、for、while、class、def 语句后面忘记添加 “ : ”
文章图片
2、误用 “=” 做等值比较
“=”是给变量赋值,“==”才是判断两个值是否相等:
文章图片
改正:
文章图片
3、变量没有定义
文章图片
会导致:“NameError: name 'age' is not defined.”
改正:
文章图片
4、字符串与非字符串连接
错误:
文章图片
非字符串和字符串连接的时候,要将非字符串转换为字符串类型之后才能连接。
改正:
文章图片
大家来猜一猜输出
1 + int(‘1’)
‘1’ + str(1)
会有怎样不同的结果呢?
文章图片
1 + int(‘1’)输出的结果是 2。
文章图片
‘1’ + str(1) 的输出结果是 11。
5、列表的索引位置
有些同学会习惯性地认为列表元素的位置是从 1 开始的:
文章图片
系统这时就会提示:"list index out of range."
可别忘了,列表元素的位置是从 0 开始的,所以第 3 个元素 “mouse” 的索引位置是 2。
改正:
文章图片
6、使用自增 “++” 自减 “--”
学过 C 语言或者 Java 的人会很习惯使用i++或者i--,但在 Python 中是没有自增自减操作符的:
文章图片
这时可以使用 “+=” 来代替 “++”
改正:
文章图片
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 函数来获取列表的长度:
文章图片
改正:
文章图片
9、函数中的局部变量赋值前被使用:
文章图片
第一行定义了一个全局变量 num ??函数 myFunction( )也定义了一个同名的局部变量??程序执行时是先查找局部变量的??在函数中找到 num 之后就不到外部查找了??此时就会出现 print 的时候变量 num 还没赋值的错误。
10、缩进问题
和其他语言的语法最大的不同就是,Python 不能用括号来表示语句块,也不能用开始或结束标志符来表示,而是靠缩进来区分代码块的。
常见的错误用法:
(1)第一种
文章图片
错误是第二行的缩进会导致两个print语句是包含和被包含的关系,但他们两者是属于同一个代码块的,所以应该写成:
文章图片
(2)第二种
文章图片
错误是第三行的缩进,改正的方法有两种。
一是如果两个 print 语句是属于同一代码块的,应该改正为:
文章图片
二是如果第三行的 print 语句是和 if 语句是同一级的,则改正为:
文章图片
(3)第三种
【Python入门必看,新手最容易犯的十个坑,最后一个是重点】在Python 3 中,缩进的时候,不能 Tab 和空格混用,每个缩进层次应该选择只使用 Tab 或者只使用空格。
无论如何,最后非常感谢大家点击观看我的文章,如过对你有帮助烦请抬抬小手给小编点点赞。有任何问题或者需要文章内的资料可以后台私信我,欢迎“骚扰”。
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- Python(pathlib模块)
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- Python数据分析(一)(Matplotlib使用)
- Python|Python 9.20