Python 3 - optparse - 发生错误时如何更改返回值

时间:2013-04-16 21:43:49

标签: python error-handling python-3.x

我对optparse的返回值有问题。当脚本找到一个未知参数时,它会出现错误消息并返回值2(echo $?)。

我需要返回1并且我想设置自己的错误消息,我该怎么做?

以下是代码的一部分:

import sys
import re
import ast 
from optparse import OptionParser

parser = OptionParser(usage="usage: %prog [OPTIONS] ", version="%prog 1.0")

parser.add_option("", "--input",
              action="store", 
              dest="inputfile",
              default="stdin",
              help="Allow to set an input file. Default input is STDIN.")

(options, args) = parser.parse_args()
options_dictionary = vars(options)

1 个答案:

答案 0 :(得分:0)

好一天后我找到了这个解决方案。我仍然不确定它是最好的,但它对我有用。

try:
    (options, args) = parser.parse_args()
except SystemExit:
    print("Error: špatné vstupní parametry, začněte prosím s -h.",file=sys.stderr)
sys.exit(1)