【问题标题】:Python day 7 of 100 days of code false variable [closed]Python 100 天代码错误变量的第 7 天 [关闭]
【发布时间】:2022-07-12 00:48:53
【问题描述】:

您好,我正在尝试了解代码背后的逻辑。为什么我必须将 while 循环设置为非 false 才能运行? (1)请帮助我理解这背后的逻辑(2)是否有更简单的替代方法来做同样的事情?此外,这是一个 while 循环,要求用户输入直到正确猜出单词

end_of_game = False

while not end_of_game:

guess = input("Guess a letter: ").lower()
    

【问题讨论】:

  • 只有当您评估的内容为真时,您才进入“while”循环。例如,“while False”永远不会进入 while 循环。
  • 我们无法从您的示例中重现可运行的程序。
  • 改用game_running = Truewhile game_running:。它是一样的,只是不同。变量的命名会影响起始值是什么以及如何制定循环。正确的英语也一样:你可以问某人是否想继续玩,也可以问他们是否想停止玩。

标签: python while-loop boolean do-while


【解决方案1】:

while 循环在条件为True 时执行。您没有将循环中的任何内容设置为False - 因为end_of_gameFalsenot end_of_gameTrue

【讨论】:

    【解决方案2】:

    好的,所以end_of_game 是一个布尔值,如果游戏已经结束,它只是保持不变。因此,默认情况下,我们将其设置为 false,因为游戏甚至在开始之前就无法结束。只要游戏还没有结束,我们就想继续玩游戏。因此,对于 while 循环,只要传递给它们的条件为真,它们就会继续循环,或者在这种情况下,它会继续玩游戏。所以我们想继续玩游戏游戏还没有结束 (end_of_game == false)。要继续循环,我们需要条件为真,因此我们需要使错误的end_of_game 条件为真。我们通过not 实现了这一目标。

    这是另一种可能更简单的查看方式:

    game_in_progress = True
    
    while game_in_progress:
    
    guess = input("Guess a letter: ").lower()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-19
      • 2020-06-23
      • 2022-06-28
      • 1970-01-01
      • 2010-12-01
      • 1970-01-01
      相关资源
      最近更新 更多