import sys
def checkarg():
try:
filename=str(sys.argv[1])
if filename=="-mycommand":
print "SPECIFIC_TEXT"
sys.exit()
else:
return filename
except:
print "ERROR"
sys.exit()
みなさん、こんにちは...上記のコードに問題があります。'checkarg'関数を呼び出すと、コマンドラインでパラメーターを渡さなかった場合、期待どおりに「ERROR」出力とsysexitが表示されます。
ただし、コマンドラインでパラメーター(「-mycommand」など)を指定すると、「SPECIFIC_TEXT」が出力され、EXCEPTブロックからも「ERROR」メッセージが出力されます。
TRYブロックは、パラメーターを指定した場合にのみ実行されます。指定しない場合、EXCEPTが順番を取得します。ただし、TRYブロックとEXCEPTブロックを一緒に実行しています。
誰かがこの行動の理由を知っていますか?私のコードに間違いはありますか?すべてのTks!