我正在尝试制作基于文本的游戏中的代码。我的游戏使用健康,代码以“健康> 0:”开始,而在游戏的另一个点,当健康最终= 0时,循环仍然继续。当health = 0时,如何在不完成整个循环的情况下使循环结束。
以下是一个例子:
health=100
while health>0:
print("You got attacked")
health=0
print("test")
如果健康= 0时代码没有停止,而不打印“test”?健康= 0时如何让它停止?我编写的代码根据用户操作扣除了健康状况,因此health = 0的时间可能会有所不同。我想在健康状况= 0时结束代码。任何帮助都将受到赞赏。
答案 0 :(得分:1)
仅在每次迭代开始时评估条件。它不会在迭代过程中检查 (例如,只要您将health
设置为零)。
要明确退出循环,请使用break
:
while health>0:
...
if some_condition:
break
...
答案 1 :(得分:0)
答案 2 :(得分:0)
你应该使用' break'声明要走出循环
health=100
while health>0:
print("You got attacked")
# decrement the variable according to your requirement inside the loop
health=health-1
if health==0:
break
print("test")
答案 3 :(得分:0)
health = 100
while True:
if (health <= 0): break
print ("You got attacked!")
health = 0
print ("Testing!")
输出:
You got attacked!
Testing!
答案 4 :(得分:0)
在 while 循环中,只有指定某种条件才能使代码停止。在这种情况下,健康总是大于 0,所以它不断打印“你被攻击了”。 您需要使健康变量减少直到它变为 0 才能打印“测试”。因此;
` health=100
while health>0:
print("You got attacked")
health-=5
if health==0:
print("test")
break`
另一种可能是这个;
` health=100
if health>0:
print("You got attacked")
if health==0:
print("test") `