0

我正在为一个班级做一个项目,我选择用 python 制作一个基于文本的游戏。我正在尝试设置它,以便问题将循环直到玩家确认他们的选择,并且我在本节中遇到了 while 循环的问题。

def pc_cls_sc(x):
  # code does some stuff

print "You are sure about" + str(x)
exVar = raw_input("Right?")
  if exVar == "y":
      print "Alright!"
      conf_Class = True
  else:
      print "Ok then."
      conf_Class = False

while conf_Class is False:
    pc_Class = raw_input(#asks some question)
    pc_cls_sc(pc_Class)

此代码的其余部分正常运行,但在 conf_Class 变量应该设置为 true 之后循环继续。我的代码前面有一个类似的循环,它工作得很好。我尝试将变量重新分配移到 pc_cls_sc 函数之外,但它所做的只是导致双重输出。谁能告诉我如何解决这个问题?

4

1 回答 1

0

您可以使用break退出循环。下面的代码将一直询问用户输入,直到他们说“y”。

while True:
    x=input("Right? " )
    if (x=='y'):
        break
于 2018-04-11T15:35:52.527 回答