if 判断
if 判断
基本使用
- 与其他编程语言中的 if 语句一样,使用方法如下:
if condition:
expressions
- 如果 condition 的值为 True,将会执行 expressions 语句的内容,否则将跳过该语句往下执行。
实例
- 下列代码中,if 语句的条件为 x < y 为 True,那么将执行条件内部语句,程序将输出 x is less than y。
x = 1
y = 2
z = 3
if x < y:
print('x is less than y')
- 下列代码中,条件变成了 x < y < z,其相当于 x < y and y < z,如果 and 两边的条件都为 True,那么才会返回 True。 注意这个用法是 python 语言特有,不鼓励大家写出这样的代码,以便其他语言的程序员能够看懂你的代码。
x = 1
y = 2
z = 3
if x < y < z:
print('x is less than y, and y is less than z')
注意点
- 在 python 语言中等号的判断使用 == 而不是 =,因为后一种是赋值语句。
if else 判断
基本使用
if condition:
true_expressions
else:
false_expressions
- 当 if 判断条件为 True,执行 true_ expressions语句;如果为 False,将执行 else 的内部的 false_expressions。
实例
- 下列代码中,因为 x > y 将会返回 False,那么将执行 else 的分支内容,输出 x is less or equal to y。
x = 1
y = 2
z = 3
if x > y:
print('x is greater than y')
else:
print('x is less or equal to y')
- 下列代码中,因为 condition 条件为 True,那么将会输出 x is greater than y。
x = 4
y = 2
z = 3
if x > y:
print('x is greater than y')
else:
print('x is less or equal to y')
高级主题
- python 中并没有类似 condition ? value1 : value2 三目操作符,但是python 可以通过 if-else 的行内表达式完成类似的功能。
- 可以这么理解下面这段语句,如果 condition 的值为 True,那么将 var1 的值赋给 var;如果为 False 则将 var2 的值赋给 var。
var = var1 if condition else var2
- 下列代码中,首先判断如果 work 为 True,那么将 done 字符串赋给 result,否则将 not yet 赋给 result, 结果将输出 done。
worked = True
result = 'done' if worked else 'not yet'
print(result)
if elif else 判断
基本使用
- 如果有多个判断条件,那可以通过 elif 语句添加多个判断条件,一旦某个条件为 True,那么将执行对应的 expression,并在代码执行完毕后跳出该 if-elif-else 语句块,往下执行。
if condition1:
true1_expressions
elif condition2:
true2_expressions
elif condition3:
true3_expressions
elif ...
...
else:
else_expressions
实例
- 下列代码中,因为 x = 4 那么满足 if 的条件,则将输出 x > 1 并且跳出整个 if-elif-else 语句块,那么紧接着输出 finish。 如果将 x = -2 那么将满足 elif x < 1 这个条件,将输出 x <1,finish。
x = 4
y = 2
z = 3
if x > 1:
print('x > 1')
elif x < 1:
print('x < 1')
else:
print('x = 1')
print('finish')