Python ***&x27;返回';外部功能(timer.py,第7行)

Python ***&x27;返回';外部功能(timer.py,第7行),python,Python,我以为这是我的缩进,但我仍然无法让它工作,它可能很简单,我以后会用它作为另一个文件的基础,所以我需要检查它是否工作。在函数中只能使用return语句。您的代码根本没有定义函数。您的代码中是否有def functionname():行?错误很明显。。。您使用的是return,而您不在函数中……修复此明显错误后,分支中还有第二个错误。你需要if-elif-else,而不是if-else。@梅尔尼科尔森:不,如果这是一个函数,他可以使用return。。else:分支是完全可选的,可以删除sys.std

我以为这是我的缩进,但我仍然无法让它工作,它可能很简单,我以后会用它作为另一个文件的基础,所以我需要检查它是否工作。

在函数中只能使用
return
语句。您的代码根本没有定义函数。

您的代码中是否有
def functionname():
行?错误很明显。。。您使用的是
return
,而您不在函数中……修复此明显错误后,分支中还有第二个错误。你需要if-elif-else,而不是if-else。@梅尔尼科尔森:不,如果这是一个函数,他可以使用
return
。。
else:
分支是完全可选的,可以删除
sys.stdout
行,删除
else:
行。我想这取决于他如何解决第一个问题。我想象他会把状态存储在一个变量中。如果他使用的是一个函数,那么这个返回将满足他的需要。@MelNicholson:很难弄清楚它应该返回什么。我认为
sys.exit(0)
对于是,
sys.exit(1)
对于否可以做什么?同意。没有上下文来确定什么是正确的。考虑到代码正在问一个问题,我想他想把这个答案作为布尔值提供给其他东西。
yes = set(['yes','y', 'ye', ''])
no = set(['no','n'])

choice = raw_input().lower()

if choice in yes:
    return True
if choice in no:
    return False
else:
    sys.stdout.write("Please respond with 'yes' or 'no'")