我正在尝试定义一个函数,但我不知道如何结束它;它导致我的下一个函数出现在第一个函数的主体中。这是代码的一大块:
def save(name):
if x['fname'] == 'ply.json':
save1(name)
else: write_data({'fname':'ply.json', 'name':name}, 'ply.json')
def incrace():
race=raw_input()
if race.lower() == "avian":
print "Great %s! So you would like to be an" % (name),
print race.lower(),
print "?"
elif race.lower() == "apex":
print "Great %s! So you would like to be an" % (name),
print race.lower(),
print "?"
elif race.lower() == "human":
print "Great %s! So you would like to be a" % (name),
print race.lower(),
print "?"
elif race.lower() == "floran":
print "Great %s! So you would like to be a" % (name),
print race.lower(),
print "?"
elif race.lower() == "glitch":
print "Great %s! So you would like to be a" % (name),
print race.lower(),
print "?"
elif race.lower() == "hylotl":
print "Great %s! So you would like to be a" % (name),
print race.lower(),
print "?"
else:
print "Sorry, what was that? You're what race?"
incrace()
这是我遇到问题的地方:
>>>def save(name):
... if x['fname'] == 'ply.json':
... save1(name)
... else:
... write_data({'fname':'ply.json', 'name':name}, 'ply.json')
...
...def incrace():
File "<stdin>", line 6
def incrace()
^
SyntaxError: invalid syntax
我一直在寻找,但我不知道如何结束这个功能。我之前遇到过这个问题,但我是如何解决它的,我也不知道。提前谢谢。
答案 0 :(得分:4)
如果您正在使用IDLE或Python shell,请按 Enter 两次以返回>>>
提示符,然后开始下一个函数定义。
你唯一不会这样做的时候是你正在研究一个类定义,在这种情况下你会在函数defs之间留下一个空白行。
答案 1 :(得分:0)
我认为您应该使用Vim编辑器并使用命令运行.. 在我看来,我对Vim有信心避免这种错误