python中if后面加冒号为什么不对,python中if后面都要加冒号吗
本教程使用的教材是《Python编程:从入门到实践》,作者是Eric Matthes。
在这一节中,学习如何根据代码的情况来划分处理。关键词是如果。学会了这个,理论上就可以做任何复杂的程序了。因为计算机科学家已经证明,简单或复杂的算法都可以由三种基本结构组成:序列结构、选择结构和循环结构。顺序结构是指按顺序逐行编写的代码,循环结构是指之前学过的for语句,选择结构是指用if语句编写的分支代码。
一、if语句介绍
比如我们从下面很多朋友那里找到了‘KNDXXM’,他妈妈叫他回家吃饭。请参见下面的代码。
Names=[kndxxm ,张, jsdlh , tldsy , cxdxtz]
对于名称中的名称:
if(name==kndxxm ):
打印(名,“妈妈,回家吃饭!”)
注意,在if语句后面有一个冒号“:”。该编译器将报告错误。注释掉if这个词,所有的孩子都回家吃饭了。请参考下面的运行结果。现在你知道if在做什么了。
二。条件测试
If语句括号中的代码称为条件测试,测试条件的值可以是True或False。如果值为True,Python将在If语句后执行代码。如果为False,Python不会执行这些代码。
上面if语句中的等号“==”表示判断两边的值是否相等。如果等于,则整个括号表达式的结果为真,否则为假。在上面的例子中,诸如“张”之类的子元素不等于“ kndxxm”,所以if之后的print语句不执行。
以下是一些常用的比较符号。
不,不是。=
以上:=
以下:=
If语句的条件测试也可以通过and或or连接。如果两个条件都满足,且为真;否则为假;如果两个条件都不满足,则为假;否则就是真的。比如你想查两个人是否都满18岁,可以这样写:if () age1=18) and () age2=18)。这里有一些例子。
年龄=15岁
2岁=17岁
如果(年龄=18岁) :
打印(未成年人半价)。
If(age=18): #)不执行此操作
打印(“成人接受全价票”)
如果(年龄!=12 ) :
Print)“你的年龄不是12岁”
如果(年龄=18和年龄2=18):
Print()两人都是未成年人,都收半价票)。
三。if语句的扩展
可以用if-elif-else的形式进行多重判断。如果其中一个条件为真,Python将执行该条件下的代码,无论其他条件是否为真,都不会执行其中的代码。比如景点按年龄收费,1-8岁免费,9-14岁半价,15-69岁全价,70岁以上免费。要写这个判断,if-elif-else最简单。
年龄=[15,4,21,69,77]#1-8岁免费,9-14岁半价,15-69岁全价,70岁以上免费。
对于年龄中的年龄:
如果(9岁) :
打印( 1-8岁免费),年龄)。
elif(15岁) :
打印(9-14岁半价),年龄)。
elif(70岁) :
打印(15-69岁全价),年龄)。
elif(年龄=70岁) :
打印( 70岁以上免费),年龄)。
否则:
Print(此语句永远不会被执行))
稍微修改一下上面的代码,把elif(age15):改为elif(age15):可以看到,除了4之外,所有满足第一个条件的元素都被第二个条件(age99)阻塞,后续的代码不执行。
if-elif-else的else只在前面的条件都不满足的情况下执行下面的代码。
If-elif-else很好用,但是没有办法判断多个条件。此时,只需编写几个单独的if())语句。
四。用if语句处理列表元素
第一个例子“kndxxm的妈妈叫我回家吃饭”,展示了如何用if语句处理列表中的元素。进行以下扩展。具体来说,in关键字可以确定一个元素是否在列表中,而not in用于确定一个元素是否不在列表中。
1.列表是空的。
以前,默认列表不是空的,但是列表可以是空的。如果列表为空,可以使用If语句来判断列表是否为空,并可以采取初始化操作来增强程序的健壮性。
名称=[]
如果名称:
对于名称中的名称:
if(name==kndxxm ):
打印(名,“妈妈,回家吃饭!”)
Else:print(列表为空))。
2.多个列表周期
比如我们举办聚会,提前发出邀请。不在名单上的人禁止入内。这是参加聚会的人的名单,请核对。逐个筛选参与者,对名单上的说“欢迎”,对名单外的说“非常抱歉”!没有邀请函是进不去的!" .
List_ok=[kndxxm ,张, jsdlh , tldsy , cxdxtz]
List_forcheck=[kndxxm ,不足,张, jsdlh ,小英, tldsy , cxdxtz]
对于list_forcheck中的成员:
If (member inlist _ ok):
打印(成员,“欢迎!”)
否则:
打印(成员,‘对不起!没有邀请你不能进去!)
文章的转载
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。