2016-12-02 73 views
0

这似乎有点简单,但对我的生活中,我对如何甚至接近这个如何重新运行该程序,并要求震荡投入

在我的代码的结束也不知道,我有一个

if(__name__ == "__main__"): 

这行我要求用户输入的东西和我执行我的功能有点像这样

b = input("enter something") 
run_my_func(b) 
0123后

而现在它只是在那里结束。

我怎样才能让这个它会再次要求用户输入任何内容的输入或退出,并按下回车

我最初的想法是把它放在一个while循环?但我不确定这是否会起作用/如何实现它

+0

你不需要围绕Python中if语句的子句使用括号。 – skrrgwasme

回答

2

是的,您可以使用while循环。因为你需要在循环中检查一个条件(空的用户输入)来决定何时停止,所以这里有一个标准的技巧。你写了一个while True环路,它在默认情况下将永远运行下去,然后你使用break语句时满足条件时结束循环早期:

while True: 
    b = input("enter something: ") 
    if b == "": 
     break 
    run_my_func(b) 
0

你说得对!在一个while循环中包装你的函数,它会一直询问,直到它没有空的为止!

b = '' 
while b == '': 
    b = input("enter something") 
run_my_func(b) 

这个作品在python3

0

一个很好的Python的while循环应该是这样的:

b = input("enter something") 
while not b: 
    b = input("enter something") 
run_my_func(b) 
1

while循环将实现你试图做一个伟大的方式。下面是一个例子:

functional = True 
while functional: 
    userInput = input("enter something") 
    if userInput == "": 
     functional = False 
    else: 
     print(userInput) 

基本上,对于每一个在其中while循环条件评估为真迭代,它将运行while循环内的代码。因此,当用户输入“”(无)时,我们希望while循环条件在下一次迭代时计算为False - 所以您可以通过多种方式实现这一点,我的方法是将名为functional的变量设置为False。