小编Yic*_*eng的帖子

python argparse 不显示正确的帮助消息

我有一个使用 python 脚本argparse。在命令行中输入后python script_name.py -h,它会显示另一个命令的帮助消息,但代码仍然有效。该脚本可以识别其中定义的选项并运行良好。看起来脚本是被什么东西封装的。我输入argparse了一个函数,一开始一切都运行良好。我只是不知道是什么原因导致帮助消息发生变化。

这是代码:

#!/usr/bin/env python

import os
import sys
import json
import logging
import argparse
import handlers


HZZ_DIR = os.path.dirname(os.path.abspath(__file__))
ROOT_DIR = os.path.dirname(os.path.dirname(HZZ_DIR))
logger = logging.getLogger('hzz_logger')
logger.setLevel(logging.DEBUG)
console = logging.StreamHandler()
console.setLevel(logging.INFO)
logger.addHandler(console)


def parse_args():
    arg_parser = argparse.ArgumentParser()
    arg_parser.add_argument('job', choices=['ws','lm','np'],
            help="ws: workspace; lm: limit; np: npranking")
    arg_parser.add_argument('-a', '--action', nargs=1,
            help="for Limit and NPranking: get/plot (limit/pull)")
    arg_parser.add_argument('-b', '--blinded', action='store_true',
            help="for Limit: true -- do expected only, false -- do observed as well.")
    arg_parser.add_argument('-v', …
Run Code Online (Sandbox Code Playgroud)

python overriding argparse pyroot

6
推荐指数
1
解决办法
1762
查看次数

标签 统计

argparse ×1

overriding ×1

pyroot ×1

python ×1