所谓的条件,指的就是满足什么条件,允许做什么事,不满足时,是不允许做的。如共享单车,规定满12周岁或以上才可以骑行,没满的则不被允许。三思而后行,再,斯可矣。Python的条件语句有if、if-else和elif语句三种。
9.1 if语句
如果判断条件为True,就执行if语句内的内容,否则不执行。if的语法结构为:
if 判断条件:
执行语句1
执行语句…
# ---年龄--- age = 12 if age >= 12: print("已满12岁,", end="") print("可以骑共享单车了。")
9.2 if-else语句
如果if的判断条件的结果为True,就执行里面的语句,否则执行else内的语句。if-else的语法结构为:
if 判断条件:
执行语句1
执行语句…
else:
执行语句1
执行语句…
# ---年龄--- age = 12 if age >= 12: print("可以骑共享单车,", end="") print("去海边看蓝天白云。") else: print("可惜骑不了共享单车,", end="") print("因为我未满12岁。")
9.3 if-elif语句
如果if的判断条件1的结果为True,就执行里面的语句,如果判断条件2的结构为True,执行elif内的语句,否则执行else里的语句。if-else的语法结构为:
if 判断条件1:
执行语句1
执行语句…
elif 判断条件2:
执行语句1
执行语句…
else:
执行语句1
执行语句…
# 年龄 age = 12 # 智能手机 android = False iphone = True if age >= 12 and android: print("已满12岁,", end="") print("可惜没有Android智能手机") elif age >= 12 and iphone: print("用IPhone手机进行扫码骑行") else: print("年龄和智能手机,有一样缺少,骑不了")
9.4 if嵌套语句
条件语句可以进行嵌套。
# 年龄
age = 12
# 智能手机
android = False
iphone = True
if age >= 12:
if android or iphone:
print("已满12岁,", end="")
print("还有智能手机,可以骑行。")
else:
print("年龄满足,可没有智能手机,骑不了")
else:
print("可惜骑不了共享单车,", end="")
print("因为未满12岁。")
9.5 三元运算符
三元运算又称三目运算,是对简单的条件语句的简写。
if 条件成立:
result = “可骑行”
else:
result = “不可骑行”
改成三元运算是:result =“可骑行” if 条件成立else “不可骑行”。满足条件,执行前面的语句,不满足,执行后面的语句。
# 年龄
age = 10
result = "可骑行" if age >= 12 else "不可骑行"
print(result)
9.6 switch-case
Python3 没有switch-case语句,查看官方文档说是可以用if-elseif-elseif…代替。实现switch-case需要被判断的变量是可哈希的和可比较的,这与Python倡导的灵活性有冲突,所以没有支持。如果确实有必要,可通过函数的字典的方式实现。
# 定义switch函数 def switch(item): switcher = { "Mon": 1, "Tues": 2, "Wed": 3, "Thur": 4, "Fri": 5, "Sat": 6, "Sun": 7 } return switcher.get(item, "0") # 调用switch print(switch("Mon"))