我整理了 Python新手 最容易犯错的 10个坑!

i小码哥

共 1783字,需浏览 4分钟

 ·

2020-09-30 12:03

相比于其他语言,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 3 中,缩进的时候,不能 Tab 和空格混用,每个缩进层次应该选择只使用 Tab 或者只使用空格。


(完)


零基础学 Python,看下嘛

 只需7天时间,跨进Python编程大门,已有3800+加入
【基础】0基础入门python,24小时有人快速解答问题;
【提高】40多个项目实战,老手可以从真实场景中学习python;
【直播】不定期直播项目案例讲解,手把手教你如何分析项目;
【分享】优质python学习资料分享,让你在最短时间获得有价值的学习资源;圈友优质资料或学习分享,会不时给予赞赏支持,希望每个优质圈友既能赚回加入费用,也能快速成长,并享受分享与帮助他人的乐趣。
【人脉】收获一群志同道合的朋友,并且都是python从业者
【价格】本着布道思想,只需 69元 加入一个能保证学习效果的良心圈子。
【赠予】价值109元 0基础入门在线课程,免费送给圈友们,供巩固


点「在看」的人都变好看了哦
浏览 33
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报