条件测试
每条if语句的核心都是一个值为Ture或False的表达式,这种表达式被称为为条件测试。Python根据条件测试的值为Ture还是False来决定是否执行if语句中的代码。如果条件测试的值为Ture,Python就执行紧跟在if语句后面的代码;如果为False,Python就忽略这些代码。
字符串比较
字符串检查时是区分大小写的
检查是否相等
>>> car = "bmw"
>>> car == "bmw"
True
>>> car = "audi"
>>> car == "bmw"
False
检查是否不等
>>> car = "bmw"
>>> car != "bmw"
False
>>> car != "audi"
True
比较数字
== |
是否相等 |
!= | 是否不等 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
>>> age = 18
>>> age == 18
True
>>> age != 19
True
>>> age < 21
True
>>> age > 21
False
>>> age <= 21
True
>>> age >= 21
False
检查多个条件
and 多个条都成立则为True,否则为False
>>> age = 19
>>> age > 18 and age > 17 and age > 16
True
>>> age > 20 and age > 17 and age < 20
False
or 多个条件成立一个则为True,全部不成立则为False
>>> age = 19
>>> age > 18 or age > 20 or age > 100
True
>>> age > 100 or age > 20 or age > 200
False
in 要判断特定的值是否在已包含的列表中
>>> name = ['Frank','Alex','Bob']
>>> 'Frank' in name
True
>>> 'May' in name
False
not in 要判定特定的值不在包含的列表中
>>> name = ['Frank','Alex','Bob']
>>> 'Frank' not in name
False
>>> 'May' not in name
True
布尔表达式
结果要么真,要么假,True or False。
if-n个elif-else结构
这是最长情况下的if结构了
最短的情况下,仅仅只是用 if 就行了
#选举
age = 19
if age >= 18:
print("You are old enough to vote!")
#运行结果
You are old enough to vote!
两种选择情况下的,if-else
#选举
age = 17
if age >= 18:
print("You are old enough to vote!")
else:
print("Sorry,you are too young to vote!")
#运行结果
Sorry,you are too young to vote!
多种情况下if-elif-else,elif可以有多个
#游乐园卖票
age = 12
if age < 4:
print("You admission cost is $0.")
elif age < 18:
print("Your admission cost is $5.")
else:
print("Your admission cost is $10.")
python并不要求if-elif结构后面必须有else代码块,else是一条包罗万象的语句,只要不满足就会执行else下的语句,可能会引起无效甚至恶意的数据,如果知道最终要测试的条件,应该考虑是用elif代替else!
不管if-n个elif-else,只要满足一个,就只会执行判断为True下面的条件,不会执行其他的。
python将在列表至少包含一个元素的时候返回True,并在列表为空时返回False!
name = []
if name:
print("Name in")
else:
print("No name")
#运行结果
No name
name = ["Frank"]
if name:
print("Name in")
else:
print("No name")
#运行结果
Name in