如何在argparse -h使用信息中覆盖cli名称?

时间:2019-07-01 00:22:12

标签: python argparse appimage

我将python应用程序捆绑到一个.AppImage文件中。现在,当我运行带有标志-h的代码时,我希望它可以按照以下方式打印内容:

$ ./mytool.AppImage -h
usage: mytool [-h] [-d DIR] [-f] [-e] [BLA [BLA ...]]
...

但是由于AppImage捆绑过程的性质,我得到了:

$ ./mytool.AppImage -h
usage: AppRun [-h] [-d DIR] [-f] [-e] [BLA [BLA ...]]
...

也就是说,AppRun而不是mytool

所以我的问题是:

如何强制覆盖应用名称,以便无论如何调用该应用,它都将始终在用法字符串中打印相同的名称?

1 个答案:

答案 0 :(得分:2)

根据hpaulj的评论,这可以通过简单地设置prog构造函数的argparse.ArgumentParser参数来解决:

parser = argparse.ArgumentParser(
        prog='mytool',
        description='Some description...'
)