ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

新手必看:5个if判断踩坑真相

新手必看:5个if判断踩坑真相 入门阶段, if 判断是新手要跨过的第一个“逻辑关卡”, 乍一看比较简单, 但实际上有不少初学者在这里掉坑里了。今天整理了新手最常遇到的5个if判断困惑结合实战代码一看就懂再也不踩坑一、感到纳闷的地方在于, 如果在if这个关键字的后面, 没有加上冒号这一符号, 程序就会因为书写得不完整而抛出报错信息。这是新手朋友们最容易去犯的一个比较低级的错误点, 那就是会忘记去把这个冒号给写上了, 符号是英文状态下的 : 这样的结果呢, 就直接就导致了后面会出现一个缩进方面的错误情况。示例, 请参见下述。if 10 5 # 少写冒号直接报错print(10大于5)正确写法if 10 5: # 必须加冒号冒号后面是代码块print(10大于5)关键之处就在于那个冒号, 它在语法层面起到了标记的作用, 其功能是指明解释器, 在冒号之后的区域便是需要针对该条件来具体执行的操作代码, 一旦遗漏这个符号那就必然会引发错误。二、第二种常见的疑惑是, 代码的缩进格式出现了混乱的情况, 并且其中的逻辑判断语句 if 的执行顺序也变得不清楚了?不需要用大括号去区分代码块, 完全依靠缩进来进行判断, 也就是说在同一个if语句后面的代码部分, 必须进行一致性的缩进处理, 这里推荐的缩进量是四个空格大小, 如果缩进的方式不统一的话, 程序逻辑出现错误的可能性是非常大的。这完全就是一个错误的示范, 因为它里面的代码缩进变得非常混乱。if 10 5:print(条件成立)print(这行缩进多了) # 缩进不一致报错正确写法缩进统一if 10 5:print(条件成立)print(这行和上一行缩进一致) # 正常执行三、关于第三个疑惑点, 具体而言就是, 条件判断中的elif语句以及else语句, 究竟应该如何正确使用。那些刚刚入门编程的人, 经常会把elif和else这两个关键字的顺序搞混, 或者是无意中多写了一个, 也可能漏写一个, 这样一来程序的逻辑就会。核心规则, 需要大家牢牢地记住, 并且要背得滚瓜烂熟。请提供需要改写的句子。score 85if score 90:print(优秀)elif score 80:print(良好)elif score 60:print(及格)else:print(不及格)四、感到困惑的第4点, 那就是在if判断语句里面, 数值为0、内容为空的字符串以及值为None的变量, 是不是统统都被视作布尔逻辑中的假?很多新手心中存在疑惑: 为什么当条件设置为 if 0: 时, 内部的代码块不会被执行? 这里涉及到一个叫做“隐式布尔值”的概念, 这些特定的值在运算过程中会被转换成 False。在编程的过程中, 有一些特定的值会被视为“假”, 这属于新手阶段必须牢记的重要知识要点。这是一份针对新手而言, 值得你认真观看的学习指引。if 0:print(执行吗) # 不执行0是假if :print(执行吗) # 不执行空字符串是假if [1,2,3]:print(执行吗) # 执行非空列表是真五、关于第五个困惑, 很多人都会问到那个if判断语句到底能不能写成带有多个条件的样子? 具体的写法应当是怎样的呢?这是完全可以的不过, 新手在使用和以及或者这些来连接多个条件的词语的时候, 非常容易就把逻辑给搞混了。正确用法age 20gender 男# and 用法if age 18 and gender 男:print(成年男性)# or 用法if age 18 or age 60:print(非青壮年)新手避坑总结1. if 后面必须加上冒号: 冒号。2. 对于同一个代码块来说, 缩进必须保持严格的一致, 并且这个一致的缩进应该是使用四个空格来表示的。3. 在代码编写当中, elif语句是可以存在多个的, 而else语句只能是唯一的个数为一个, 并且这些分支结构的排列顺序是不能发生混乱的。4. 数值零和那个空的概念, 还有英文单词None都表示的是假的意思, 而不是这些情况也就是非空、而且不是零的时候就表示为真。5. 把多个条件拿去用and或者or来连接起来, 这一点一定要注意, 绝对不要把前后的逻辑关系给弄反了。当你在编写用于进行条件判断的if语句时, 最有可能碰到的是哪些种类的报错信息呢? 请在评论区里留下你的答案, 并且关注我的账号, 让没有基础的新手也可以非常容易地开始学习。
返回列表