Python 返回开始或多次重复原始输入

Python 返回开始或多次重复原始输入,python,Python,我已经写了一个代码,它是有效的,现在代码中有一个变量,我想在最后问这个人是否想退出/继续,他们说继续。它一直回到第一个问题。还有一种方法可以在一开始问这个问题要重复多少次。抱歉,无法上载代码,因为它超过150行 助教 Greggy D如果我正确理解了你的问题,类似的方法可能会奏效 def dostuff(): ABC = raw_input("Enter Number (q exits): ") if(ABC.lower() == 'q'): #Allow the user

我已经写了一个代码,它是有效的,现在代码中有一个变量,我想在最后问这个人是否想退出/继续,他们说继续。它一直回到第一个问题。还有一种方法可以在一开始问这个问题要重复多少次。抱歉,无法上载代码,因为它超过150行 助教
Greggy D

如果我正确理解了你的问题,类似的方法可能会奏效

def dostuff():
    ABC = raw_input("Enter Number (q exits): ")

    if(ABC.lower() == 'q'):  #Allow the user to enter q at this point to exit
       return False

    Product = int(raw_input("Enter Product:"))

    #do stuff to print out the cost of these items.

    #We could forgo the next lines and always return True here assuming the user
    #has more input if they didn't input 'q' for 'ABC'.  That's up to you.

    #return True

    print "Do you have more purchases [Y/N]?"
    answer=raw_input()
    return answer.upper() == 'Y'

while dostuff():
    pass

#same as:  
#while True:
#   if(not dostuff()): 
#      break

在Python中,while循环应该允许您完成目标。您可以使用以下示例来解决您的问题:

while(raw_input()[0] != 'n'):
    print 'to exit print n'

在您的情况下,while循环应该可以工作

while(raw_input("to exit enter n ")[0] != 'n'):
        print("Doing some work in the loop, until user enters an 'n'.")
raw\u input()

是请求用户输入的好方法,并允许您插入提示,如

要退出,请输入n

请记住,您应该检查多个“n”,如用户按下回车键。此外,对数据执行简单的解析可能是有意义的,
因此,你可以做的不仅仅是回答是否有人输入了n。

你可以上传一个较小的示例/相关部分,不必是实际的代码,但人们更愿意帮助你尝试,而不是为你编写整个解决方案。老兄,你的代码有点凌乱,例如,您可以编写
return answer.upper()='Y'
@JakobBowyer:这一点很好。昨晚没睡好。当然,
dostuff
可能更好地放在主
循环中,而
循环也是如此。这有点奇怪,因为即使用户想要继续,在一定次数的尝试之后,他们也无法继续。但基本思想是使用
while
循环,我希望这足够清楚。好的,这里是相关代码ABC=raw\u input(“输入数字”)、Product=int(raw\u input(“输入产品”)),一旦他们输入数字,那么这些项目的产品将显示$amount。如果他们有一个以上的项目需要订购,它需要回到第一个问题,或者我可以问他们有多少不同的订单。我试过你的选择,但不起作用,也不知道该放在哪里it@GreggyD--我编辑了一点。这里的想法基本上和以前一样…mgilson,我尝试了代码,但它出现了缩进错误。我还将你的代码复制到一个单独的屏幕上,它返回时出现了一个语法错误。我觉得这有点奇怪,因为它会询问你是否想在第一次循环中运行代码……这也行得通,但你无法处理用户输入的内容——所以为了继续,他们只需将键盘捣碎,然后按enter键。如果用户只点击“输入/返回”而不输入任何数据,那么它也会失败。
while(raw_input("to exit enter n ")[0] != 'n'):
        print("Doing some work in the loop, until user enters an 'n'.")