Python中通过点运算符来访问命名空间中参数args方法
在Python中,在使用args
进行参数传入时,通常是调用argparse
模块的ArgumentParser
来创建对象。这种设计虽然使得访问命令行参数更加方便,可以通过点运算符来访问命名空间中的参数。但是当封装调用该模块的程序为.exe
可执程序后,其他人或脚本在调用该程序时,往往会出现黑色的命令输入行的弹窗,非常影响使用。下面笔者提供一种简单的方法,也能实现类似的功能,通过点运算符来访问命名空间中的参数,以此简化自定义函数传入参数的调用。具体示例代码如下:
from types import SimpleNamespaceargs = SimpleNamespace() # 通过该函数实现点运算符来访问命名空间中的参数
args.input = 'this is SimpleNamespace class'
args.nums = 8def print_args(args):print(f'args.input = {args.input}')print(f'args.nums = {args.nums}')print_args(args)
显示效果如下:
该方法的运用,可以显著提高程序参数的传入效率,简化自定义类别或者函数的输入,尤其是在不同脚本之间进行参数传入时,非常方便。