这是我制作的一个游戏的代码,在第9-13行,我试图使饥饿变量每180秒减少10,但它不起作用。在
import threading
print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
print(" Welcome to my game")
print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
health = 100
stamina = 100
hunger = 100
def hungerdecrease(h):
global hunger
threading.Timer(180,hungerdecrease).start()
h -= 10
hungerdecrease(hunger)
while health > 0 and stamina >0 and hunger >0:
if hunger <50:
print("You are hungry.")
if stamina <10:
print("You are feeling exhausted.")
if health <50:
print("You are unhealthy.")
print("You are dead")
while
循环需要一些被动延迟,或者您正在使用100%活动CPU循环。在thread.Lock
来防止对health
变量的并发访问health < 0
时,我停止重新填充线程计时器设置为1的最小完整可验证工作示例:
相关问题 更多 >
编程相关推荐