【问题标题】:Return to the top of inner while loop返回内部while循环的顶部
【发布时间】:2015-05-20 01:11:03
【问题描述】:

嗨~我是 python 新手,我正在做我的总结。 我基本上是在创建一个基于文本的游戏,其中包含大量的 while 循环,以及 while 循环内的 if 语句。我想返回到内部 while 循环的顶部(虽然我的程序中有很多内部循环,但是程序总是返回到最外层循环的顶部,如下所示:

    Tester=True
    While Tester:

while 循环中的程序部分在 if 语句下,基本上看起来像:

    if(X==1):
             continue
    if(X==2):
             break

所以,我使用了 continue,试图让它回到内部循环,但它总是返回“Tester=True”。 有人可以告诉我如何解决这个问题吗?非常感谢!

我不会在这里发布我的代码,因为我的老师不希望我们这样做,对此感到抱歉。

【问题讨论】:

  • 如果您不能发布您的实际代码,您是否可以将代码简化到显示您的问题的最低限度?
  • 你能不能至少给我们展示一下带有 2 个 while 循环的代码。如果 if 语句确实在 2 个嵌套的 while 循环中,continue 应该会让您回到内部循环的顶部。
  • 你为什么认为it always returns to "Tester=True"?你能确定吗? AFAIK 在while 循环中您无法实现该行为。
  • 真的不清楚你在问什么。如果您不澄清问题,您的问题将很快被关闭。

标签: python loops while-loop


【解决方案1】:

一个可能的解决方案是使用生成器。 Generators

【讨论】:

  • 好吧,当他想从他离开的地方继续时,他可以next() 从他离开的地方开始。
  • 那么我应该把 next() 放在哪里?
【解决方案2】:

你的要求真的不清楚,但我认为定义一个函数会对你有很大帮助。

您可以使用def function(): 定义一个函数,并在需要时调用它。

tutorial and description here

【讨论】:

    猜你喜欢
    • 2015-07-01
    • 2016-07-12
    • 1970-01-01
    • 2021-08-17
    • 1970-01-01
    • 2014-12-04
    • 1970-01-01
    • 2019-07-03
    • 1970-01-01
    相关资源
    最近更新 更多