python argparse,如何通过名称引用参数

2023-11-29

这是一个关于python中argparse的问题,它可能很简单

import argparse

parser=argparse.ArgumentParser()

parser.add_argument('--lib')

args = parser.parse_known_args()

if args.lib == 'lib':
    print 'aa'

这可行,但我不想调用 args.lib,而是只想说“lib”(我不想输入更多内容),有没有办法将所有 args 变量导出到模块之外(即更改范围)。这样我就可以直接检查lib的值,而不是通过在前面指定模块的名称

PS:我有很多变量,我不想重新分配每一个变量


首先,我建议使用args说明符。哪里就很清楚了lib是来自。也就是说,如果您发现自己经常引用某个参数,则可以将其指定为更短的名称:

lib = args.lib

有一种方法可以将所有属性一次转储到全局命名空间中,但它不适用于函数的本地命名空间,并且使用globals没有充分的理由是一个坏主意。我不会考虑保存一些实例args.是一个足够好的理由。也就是说,这里是:

globals().update(args.__dict__)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python argparse,如何通过名称引用参数 的相关文章

随机推荐