前面已经学习到程序的基本构成模块。可以利用输入、处理和输出建立一个程序。
可以把输入赋值个一个变量,以便于以后使用。
可以用数学运算来进行处理,还需要学习一下决策技术用于对程序工作进行控制。
关键字if:测试条件
程序需要能够根据输入做不同的事情,决策时程序需要完成一个测试做出检查,查看某个条件是否为真。
Python完成测试的方法很有限,而且每个测试只有两个可能的答案:真(true)或者假(false)。
完成测试并根据结果做出判断称为分支,程序根据测试结果来决定走哪条路,或者沿哪个分支执行。
举例:
现在我们正在用程序实现一个记分器功能。需要做一个测试,如果小花给出了正确答案,就为它加一分。
想要知道小花的答案是否正确,我们需要知道小花的答案是什么,正确的答案是什么,如果小花的答案和正确答案一致,则小花的答案正确。
两个变量相等,条件为真,两个变量不相等,条件为假。
代码块:
一行或者放在一起的多行代码。它们都与程序的某个部分相关(比如一个if语句)。在Python中,通过将块中的代码行缩进开构成代码块。
此例中,if后面的冒号告诉Python下面将是一个指令块。这个块包括从前面的if行一下直到下一个不缩进的代码行之间的所有缩进代码行。
缩进:
一行代码行稍微靠右一点,不是从最左端开始,而是前面有一些空格。在有些语言中,缩进只是一个风格问题,不论喜欢还是不喜欢都可以缩进。但是在Python中,缩进是个必不可少的部分。
缩进会告诉Python代码块从哪里开始,到哪里结束。
代码块缩进多远并不重要,只要保证整个代码块缩进的程度是一样的。
Python中的惯例:总是将代码块缩进4个空格。
测试或检查也称之为比较。双等号称为一个操作符,前面已经说过操作符就是会对两边的值进行一些操作的特殊符号,双等号操作符的操作就是测试两个值是否相等。
“=”用来设置变量或者赋值,“==”用来测试两个东西是否相等。
比较操作符
小于:<
大于:>
不等于:!=
大于或等于:>=
小于或等于:<=
还可以把两个操作符“串”在一起完成一个范围测试。比如,
if 3< age <4:
比较操作符也称之为关系操作符,因为它们要测试两边值的关系:相等还是不相等,大于还是小于。比较也称为条件测试或者逻辑测试。在编程中,逻辑就是指某个结论的答案是真还是假。
关键字elif:再测试
如果测试为真,会执行代码块。如果为假,Python会有3种可能:
- 做另一个测试
如果第一个测试结果为假,可以利用关键字elif(else if的缩写)让Python在做另外一个测试。 - 如果所有其他测试结果都为假,做其他工作
这要利用else关键字完成,它总是在最后出现,也就是完成if和所有的elif语句之后。 - 继续
如果if块后面没有放任何其他东西,程序会继续执行下一行代码或者会结束。
测试多个条件:and关键字
有两种方法,if嵌套if,或者使用and关键字连接条件。
可以使用多个and把两个以上的条件放在一起,所有的条件都必须为真,这个语句才为真。
测试多个条件:or关键字
or关键字也可以把多个条件放在一起。如果使用or,只有任意一个条件为真,就会执行代码块。
测试条件:not关键字
可以用not把比较倒过来,表示相反的逻辑。