python 后10个元素_Python 新手容易犯错的10个坑!

希望点击上方   编程学习者社区,选择 创建星标

回复关键字 资源  获取编程资源

e91e1cffba532f4b37e49b1220f62437.png

阅读文本大概需要 5 分钟

相比于其他语言,Python 的语法比较简单易学,但一旦不注意细节,刚入门的新手就会掉进语法错误的坑里。今天给大家讲几个平常比较容易掉的“坑”。

1、忘记写冒号

在 if、elif、else、for、while、class、def 语句后面忘记添加 “ : ”

785301132e3b93bbad788183d18dccc4.png

2、误用 “=” 做等值比较

“=”是给变量赋值“==”才是判断两个值是否相等

5499cc55db364fc64b66088eaf23ca7a.png

改正:

39d73bbce45a97ee89f79e504d9432e2.png

3、变量没有定义

e29f9ed2326fd5642c02bfef3ae5318a.png

会导致:“NameError: name 'age' is not defined.”

改正:

c4f6c3a4158e73c3193beb63afa8df3a.png

4、字符串与非字符串连接

错误:

3ab8012659d4f4b2b1a22d24e556574f.png

非字符串和字符串连接的时候,要将非字符串转换为字符串类型之后才能连接。

改正:

a5552e47a80e3eda6c3f5aa57602c310.png

大家来猜一猜输出

1 + int(‘1’) 

‘1’ + str(1)

会有怎样不同的结果呢?

607bf18c0111f01ac21555ccf1765ff6.png

1 + int(‘1’)  输出的结果是 2。

f15454ebdc4c36aba1a2a0d8c9474363.png

 ‘1’ + str(1) 的输出结果是 11。

5、列表的索引位置

有些同学会习惯性地认为列表元素的位置是从 1 开始的:

a1be7de6604944538ca6ef43929ae2a8.png

系统这时就会提示:"list index out of range."

可别忘了,列表元素的位置是从 0 开始的,所以第 3 个元素 “mouse” 的索引位置是 2。

改正:

159a76601dd78a26c94e6446169db8f8.png

6、使用自增 “++” 自减 “--”

学过 C 语言或者 Java 的人会很习惯使用i++或者i--,但在 Python 中是没有自增自减操作符的:

817a019639bded3df46a8830445fe813.png

这时可以使用 “+=” 来代替 “++”

改正:

1218e6eb2c463d830af0226858068bb4.png

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 函数来获取列表的长度:

d4afa08480607959842673bb2e5b4aec.png

 改正:

a758cc37d1bc4143c5ac09e09bbf7ad8.png

9、函数中的局部变量赋值前被使用:

e64b6ebedc9d93d02514487d0f218219.png

第一行定义了一个全局变量 num ➡️函数 myFunction( )也定义了一个同名的局部变量➡️程序执行时是先查找局部变量的➡️在函数中找到 num 之后就不到外部查找了➡️此时就会出现 print 的时候变量 num 还没赋值的错误。 

10、缩进问题

和其他语言的语法最大的不同就是,Python 不能用括号来表示语句块,也不能用开始或结束标志符来表示,而是靠缩进来区分代码块的。

常见的错误用法:

(1)第一种

4e12f273626212e5cd83a2c350e1fe40.png

错误是第二行的缩进会导致两个print语句是包含和被包含的关系,但他们两者是属于同一个代码块的,所以应该写成:

062d9725c339a1ff2f91e31fede73a0a.png

(2)第二种

d011e5f104bdfa05bbf640f642449c76.png

错误是第三行的缩进,改正的方法有两种。

一是如果两个 print 语句是属于同一代码块的,应该改正为:

efa22b379995f17046a0e257ddcfb850.png

二是如果第三行的 print 语句是和 if 语句是同一级的,则改正为:

e1fc522b758c59f1b138d2715f517068.png

(3)第三种

在Python 3 中,缩进的时候,不能 Tab 和空格混用,每个缩进层次应该选择只使用 Tab 或者只使用空格。

bb3ff3a44ab784de7cb1a73d536ecc9c.gif
来源:数据分析与统计学之美

往期精选

在知乎上学Python-入门篇在知乎上学爬虫大家都用什么背英语单词Python库分享b6ae1261ee2d89b4e0e74dd5ec947616.gif256dbfb59c152f4633c93e17481a2e59.gif
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值