2009-12-27 83 views
0

我刚开始学习Python ......如此忍受我请为什么“def InvalidArgsSpecified:”语法错误?

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

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() 

回答

6

的语法错误是在第一行,那就是你有:

def InvalidArgsSpecified: 

将其更改为:

def InvalidArgsSpecified(): 

这些括号是强制性的def,即使有它们之间(就像括号总是用来通话的功能没有什么 - 空括号,在这种情况下, ,如果你没有参数调用)。

编辑:现在OP的得到一个错误试图调用这个函数在第9行:因为这个函数的定义是超过900行,它可能获取调用(从模块的顶层,而不是从内另一函数),在这种情况下,简单的修复方法是在之后定义它,只调用。如果它是什么比这更微妙,我们需要看到的代码进行调试你 - )

+0

看到上面的编辑请 – 2009-12-27 23:12:52

+2

@Indebi,看到并回应,虽然问题与其中的问题不是一个问题,但与谷物和SO的正常行为背道而驰!如果你有一个错误,就此提出一个问题,相应地修正这个错误,从而揭示一个新的完全不同的错误,正常的有礼貌的行为就是接受修正你的错误的答案,并且打开一个关于新的和单独的问题的单独问题。完全不同的错误。 – 2009-12-27 23:19:07

+0

randomgarbagetoletmecomment 谢谢,它的工作 – 2009-12-27 23:25:34

2

的函数不带参数还必须包括括号,如:!

def InvalidArgsSpecified(): 
+0

看到上面的编辑请 – 2009-12-27 23:14:18