私の except の何が問題なのでしょうか? [重複] 質問する

私の except の何が問題なのでしょうか? [重複] 質問する

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

誰か何か考えがありますか?

ベストアンサー1

Python3を使用し、Python3でraise構文はカンマ区切りの引数を受け入れなくなりました

代わりに以下を使用してくださいas:

except getopt.GetoptError as e:

このフォームは 2.6 および 2.7 とも下位互換性があります。

おすすめ記事