【问题标题】:How to end a definition of a function?如何结束函数的定义?
【发布时间】:2014-01-02 03:39:16
【问题描述】:

我正在尝试定义一个函数,但我不知道如何结束它;它导致我的下一个函数位于第一个函数的主体中。这是一段代码:

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

我一直在寻找一段时间,但我不知道如何结束该功能。我以前遇到过这个问题,但我也不知道如何解决它。提前致谢。

【问题讨论】:

  • 如果你真的在函数之间有那个空白行,那应该可以工作。
  • @user2357112 我怀疑那个空白行上可能有空格...
  • @MattDMo:看起来像。空格会出现在编辑视图的代码 sn-p 中,但不会出现在解释器会话或显示的文本中。

标签: python python-2.7 syntax function


【解决方案1】:

如果您在 IDLE 或 Python shell 中工作,请按两次 Enter 以返回 &gt;&gt;&gt; 提示符,然后开始您的下一个函数定义。

您唯一不会这样做的情况是,如果您正在处理类定义,在这种情况下,您会在函数定义之间留下一个空行。

【讨论】:

    【解决方案2】:

    我认为你应该使用 Vim 编辑器并使用命令运行.. 在我看来,我对 Vim 有信心避免此类错误

    【讨论】:

      猜你喜欢
      • 2018-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-09
      • 2010-09-15
      • 1970-01-01
      相关资源
      最近更新 更多