if条件语句是一种编程语言中用于控制程序流程的结构。它根据一个条件的真假来决定执行不同的代码块。
if条件语句通常由if关键字、一个条件表达式和一个代码块组成。条件表达式可以是一个返回布尔值的表达式,如果条件为真,则执行代码块中的代码;否则,跳过该代码块。
条件语句流程图如下:
a = 10
if a > 5:print(a)
10
需要注意的是,Python对于缩进要求十分严格,不同于C语言将函数体置于括号内,在Python中表示嵌套关系只有依托缩进来完成,因此要注意每一行语句与前文的关系并选择正确的位置。
补充说明:
if 语句的判断条件包括大于>、大于等于>=、小于<、小于等于<=、等于==、不等于!=六种符号来表示其关系。如果存在多个条件需要同时判断时,可以使用逻辑运算符or (布尔或)表示两个条件有一个成立时判断条件成功;使用逻辑运算符 and (布尔与)表示只有两个条件同时成立的情况下判断条件才成功。
a = 10
if a >= 5:print(a)
b = 5
if b >= 5 and b != 8:print(b)
c = -2
if c == 0 or c < 2.5:print(c)
10
5
-2
以上是if的判断条件为number数据类型的情况,实际上条件表达式可以为任意返回值为布尔类型的语句。如果条件表达式较长可以放在括号内,便于使用。
import os
a = "right"
if (bool(1)):print(a)
if (type(a) is str):print(a)
if ("aa"):print(a)
print(bool("aa"))
b = [1, 2, 3]
if 2 in b:print(b)
if os.path.isfile('test2\\word_work.txt'):print(b)
right
right
right
True
[1, 2, 3]
[1, 2, 3]
常用到成员运算符(in)、身份运算符(is)以及其他的属性判断方法,此外由于非0数字和字符串会返回True值,当我们需要确定执行代码块时可以在if后接1。
当我们判断某个条件不成立时需要执行另一种情况时,要用到else语句,else是用于在if条件不满足时执行另一段代码块。
若情况大于两种时,就要使用elif,相当于C语言的else if,由于Python中没有Switch语句,这也是仅有的多条件判定的方法之一。注意条件语句只要满足一个条件就会输出,不会考虑其他条件是否达成。
tuple1 = (2, 4, -55, 0, "hi")
if 2 not in tuple1:print("2不在tuple1中")
elif tuple1[1] == 10:print("tuple1第1位数据是10")
elif "hi" in tuple1:print("hi在tuple1中")
elif type(tuple1) == tuple:print("tuple1的类型是tuple")
else:print("均不符合")
hi在tuple1中
要注意else后没有条件表达式,一切未列出情况都计入else,作用同switch中的default。
if条件语句的简单应用就介绍完成了,作为逻辑判断的重要表达形式,无论在多么复杂的程序中都会有if语句存在。学好if语句,就是为日后搭建代码框架奠定坚实的基础。