Python 用 bool 类型表示 true 和 false 值,它是 int 的子类。
这个类型只有两个值:True 和 False。
这些值可以绑定到变量上:
>>> true_variable = True
>>> false_variable = False
我们可以用 and、or 和 not 运算符来求值布尔表达式:
>>> true_variable = True and True
>>> false_variable = True and False
>>> true_variable = False or True
>>> false_variable = False or False
>>> true_variable = not False
>>> false_variable = not True
在本练习中,你需要实现 1980 年代经典街机游戏 Pac-Man 的一些规则。
你需要实现四条规则,它们都与游戏状态有关。
不用担心参数是怎么来的,只需专注于组合这些参数,返回预期的结果。
定义 eat_ghost() 函数,它接收两个参数(吃豆人是否有能量丸生效 和 吃豆人是否碰到幽灵),并返回一个布尔值,表示吃豆人是否能吃掉幽灵。
只有在吃豆人有能量丸生效且碰到幽灵时,该函数才应返回 True。
>>> eat_ghost(False, True)
...
False
定义 score() 函数,它接收两个参数(吃豆人是否碰到能量丸 和 吃豆人是否碰到豆子),并返回一个布尔值,表示吃豆人是否得分。
只要吃豆人碰到能量丸或豆子,该函数就应返回 True。
>>> score(True, True)
...
True
定义 lose() 函数,它接收两个参数(吃豆人是否有能量丸生效 和 吃豆人是否碰到幽灵),并返回一个布尔值,表示吃豆人是否失败。
如果吃豆人碰到幽灵且没有能量丸生效,该函数就应返回 True。
>>> lose(False, True)
...
True
定义 win() 函数,它接收三个参数(吃豆人是否吃掉了所有豆子、吃豆人是否有能量丸生效,以及 吃豆人是否碰到幽灵),并返回一个布尔值,表示吃豆人是否获胜。
如果吃豆人吃掉了所有豆子,并且根据第 3 部分定义的规则判断没有失败,该函数就应返回 True。
>>> win(False, True, False)
...
False