我的除外有什么问题?

时间:2013-02-16 09:23:14

标签: python exception-handling syntax-error except

我的上面有一个SyntaxError,除了:

try:
    opts, args = getopt.getopt(sys.argv[1:], 'P:D:H:d:u:p:nvhmJi:c:Ml:TB:',
            ['host=', 'port=', 'directory=', 'user=', 'password=',
             'daemon=', 'noauth', 'help', 'verbose', 'mysql', 
             'icounter=', 'config=', 'nolock', 'nomime', 'loglevel', 'noiter',
             'baseurl='])
except getopt.GetoptError, e:
    print usage
    print '>>>> ERROR: %s' % str(e)
    sys.exit(2)

我收到错误:

File "main.py", line 199

except getopt.GetoptError, e:

SyntaxError: invalid syntax

有人有任何想法吗?

2 个答案:

答案 0 :(得分:37)

你使用python3和python the raise syntax no longer accepts comma-separated arguments

改为使用as

except getopt.GetoptError as e:

此表格也向后兼容2.6和2.7。

答案 1 :(得分:6)

您的语法无法捕获异常

您应该写except getopt.GetoptError as e:而不是except getopt.GetoptError, e: