习题 27:记住逻辑关系
逻辑术语
and 与
or 或
not 非
!= 不等于
== 等于
>= 大于等于
<= 小于等于
True 真
False 假
习题 28:布尔表达式练习
习题 29:if 语句
people = 20
cats = 30
dogs = 15
if people < cats:
print("Too many cats! The world is doomed!")
if people > cats:
print("Not many cats! The world is saved!")
if people < dogs:
print("The world is drooled on!")
if people > dogs:
print("The world is dry!")
dogs += 5
if people >= dogs:
print("People are greater than or equal to dogs.")
if people <=dogs:
print("People are less than or equal to dogs.")
if people == dogs:
print("People are euqal to dogs.")
习题 30:else 和 if
people = 30
cars = 40
buses = 15
if cars > people:
print("We should take the cars.")
elif cars < people:
print("We should not take the cars.")
else:
print("We can't decide.")
if buses > cars:
print("That's too many buses.")
elif buses < cars:
print("Maybe we could take the buses.")
else:
print("We still can't decide.")
if people > buses:
print("Alright, let's just take the buses.")
else:
print("Fine, let's stay home then.")
常见问题回答:
如果多个 elif 块都是 True,Python 会如何处理?
Python 只会运行它遇到的是 True 的第一个块,所以只有第一个为 True 的块会运行。
习题 31:做出决定
print("You enter a dark room with two doors. Do you go through door #1 or door #2?")
door = input("> ")
if door == "1":
print("There's a giant bear here eating a cheese cake. What do you do?")
print("1. Take the cake.")
print("2. Scream at the bear.")
bear = input("> ")
if bear == "1":
print("The bear eats your face off. Good job!")
elif bear == "2":
print("The bear eats your legs off. Good job!")
else:
print("Well, doing %s is probably better. Bear runs away." % bear)
elif door == "2":
print("You stare into the endless abyss at Cthulhu's retina.")
print("1. Blueberries.")
print("2. Yellow jacket clothespins.")
print("3. Understanding rebolvers yelling melodies.")
insanity = input("> ")
if insanity == "1" or insanity == "2":
print("Your body survives powered by a mind of jelllo. Good job!")
else:
print("The insanity rots your eyes into a pool of muck. Good job!")
else:
print("Your stumble around and fall on a knife and die. Good job!")
if / elif / elif /... / elif / else 只要检查到第一个 True 就可以停下来。