python tab和空格混用_Python入门容易掉进的10个坑

相比与其他语言,Python的语法计较简单易学,但一不注意细节,刚入门的新手很容易就会掉进语法错误的坑里。

df50977409c3abef81c409e6a3ba213d.gif

忘记写冒号

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

错误示例       dcc9ca4cf335e0d9acd2e3958b0113e0.png 正确写法       cfeede1e21511bac39c39f8fb11f6937.png

误用“=”做等值比较

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

错误示例       1969c81c76a4049365bb7b865ad001b5.png 正确写法       f1b26976ea20a2de8698a17a02ade2e5.png

变量没有定义

错误示例

       c0b07b3a31511dcb2f7e8ba4dffeda4c.png 会导致:NameError: name 'age' is not defined. 正确写法       b65784026e9f2b8c052d2ee5f1130f8c.png

字符串与非字符串的链接

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

错误示例       ba77e84934fad6b082c176e43b4af3ed.png 正确写法       97975b97ef6906ebdc1600767cfed8a0.png

列表的索引位置

习惯性的认为列表元素的位置是从1开始的;

错误示例       dd34cb1ff7f941bba35d835b7cfca141.png 列表的元素位置是从0开始的,所以第三个元素“mouse”的 索引位置是2 正确写法       f88f02fb2f7ef08dd26161f74750e1b6.png

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

学过C言和Java的人会很习惯使用i++或者i--,但在python中是没有自增自减操作符的,这时可以使用“+=”来代替“++”。

错误示例      ec7d51bda8ebdd4adfe8b69ec08d71a4.png 正确写法      eea1c99e81554b393fa2da28889dee5a.png

索引元素位置时忘记调用len方法

通过索引位置来获取列表元素时,忘记要先使用len函数来获取列表的长度

错误示例      26d6948871a59e29084f2291d1c23f26.png 正确写法      fd2eb81886cca7a5d924a6de54670fb6.png

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

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

缩进问题

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

常见错误示例: (1)      87aeb4c9526b983b9fd65158e8693775.png 错误是第二行的缩进会导致两个print语句是包含和被包含的关系,但他们两者是属于同一个代码块的,所以应该写成      8774d165f8353844e3744ef92eba0ad7.png (2)      ab8bba774e08c14e08e6831ab44cdb10.png 错误是第三行的缩进,改正的方法有两种: 一是如果两个print语句是属于同一代码块的,应该改正为      6821bbec804b43182f67711dbc94b8d7.png 二是如果第三行的print语句是和if语句是同一级的,则改为      c5d5d628ce1e640068def700d8d4a5cc.png (3) 在python3中,缩进的时候,不能Tab和空格混用,每个缩进层次应该选择只使用Tab或者使用空格。

使用关键字命名变量

Python3中一共有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 自定义变量时,变量名不能和这些关键字重复。 39862b30a792ae0f3316f9e1e9abbe01.png

   扫码关注

获取更多内容

指尖编程

f420e6af40700eef3e85b990f69fd0a9.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值