Python的optparse可以显示选项的默认值吗?

pup*_*eno 43 python optparse

有没有办法在显示帮助--help时使Python的optparse打印成为选项或标志的默认值?

Jar*_*die 54

尝试使用%default字符串占位符:

# This example taken from http://docs.python.org/library/optparse.html#generating-help
parser.add_option("-m", "--mode",
                  default="intermediate",
                  help="interaction mode: novice, intermediate, "
                       "or expert [default: %default]")
Run Code Online (Sandbox Code Playgroud)


Ark*_*ady 7

如果您需要以编程方式访问默认值,您可以通过defaults解析器的属性(它是一个字典)来访问它们


小智 7

如果要自动为您指定的所有选项添加默认值,可以执行以下操作:

for option in parser.option_list:
    if option.default != ("NO", "DEFAULT"):
        option.help += (" " if option.help else "") + "[default: %default]"
Run Code Online (Sandbox Code Playgroud)