and 和 or 是python的两个逻辑运算符,可以使用and和or进行多个条件内容的判断.
and是当and连接的所有的表达式的值为真时,才为真
or是当or连接的所有表达式的值一个为真时,这个表达式就为真
and和or表达式返回的本质
if与elif搭配,只要有一个条件判断为真后面的就跳过不执行了第一次输入taunt bear,将bear_moved的值修改成了True
第二次输入taunt bear时,条件就变成了 choice == “taunt bear”和 (bear_moved = True),第一个条件choice为True bear_moved也为True,在进行and运算,得到的就是True,所以执行的是第二个elif
至于第二次报错,不清楚你写的dead("字符串内容"),这里面dead表示什么