0

我刚开始学习python...所以请多多包涵

为什么这段代码给我一个无效的语法错误

def InvalidArgsSpecified:
    print ("*** Simtho Usage ***\n")
    print ("-i Installs Local App,, include full path")
    print ("-u Uninstalls Installed App,include ID or Name")
    print ("-li Lists all installed Apps and their ID")
    print ("-all Lists All Apps in Repository")
    print ("-di Downloads and Installs App from repository, enter the title or id number")
    print ("-dw Downloads and Installs Single App from a full link")
    print ("-rmall Removes All Packages installed and removes Simtho itself\n")
    print ("*** End of Simtho Usage ***")
    sys.exit()

编辑:现在说它在第 9 行未定义 第 9 行是

InvalidArgsSpecified()
4

2 回答 2

6

语法错误在第一行,你有:

def InvalidArgsSpecified:

将其更改为:

def InvalidArgsSpecified():

这些括号在 a 中是强制性的def,即使它们之间没有任何内容(就像括号总是用于调用函数一样——空括号,在这种情况下,如果你在没有参数的情况下调用)。

编辑:现在 OP 在第 9 行尝试调用此函数时出现错误:由于此函数定义超过 9 行,因此它可能在定义之前被调用(从模块顶层,而不是从另一个函数中),在这种情况下,简单的解决方法是仅在定义调用它。如果它比这更微妙,我们需要查看代码来为您调试它!-)

于 2009-12-27T23:12:13.860 回答
2

没有参数的函数仍然必须包含括号,例如:

def InvalidArgsSpecified():
于 2009-12-27T23:12:51.377 回答