编程54--python学习28Namespace与dict的相互转换,保存Namespace,以字典形式传入argparse的参数
Posted 呆呆象呆呆
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编程54--python学习28Namespace与dict的相互转换,保存Namespace,以字典形式传入argparse的参数相关的知识,希望对你有一定的参考价值。
Namespace转换成dict
import argparse
# 创建 ArgumentParser() 对象
parser = argparse.ArgumentParser()
# 调用 add_argument() 方法添加参数
parser.add_argument("-a")
# 使用 parse_args() 解析添加的参数
args = parser.parse_args()
# 可以打印出最终存储的参数空间属性
print(args)
# 打印参数空间中的变量
print(args.a)
dic = vars(args)
print(dic)
dict转换成Namespace
import argparse
dic = dict(a = 100)
# 创建 ArgumentParser() 对象
parser = argparse.ArgumentParser()
# 调用 add_argument() 方法添加参数
parser.add_argument("-a")
# 使用 parse_args() 解析添加的参数
args = argparse.Namespace(**dic)
# 可以打印出最终存储的参数空间属性
print(args)
# 打印参数空间中的变量
print(args.a)
Namespace 保存下来
第一种方法可以转换成字典之后使用如下链接
第二种方法可以针对每一个属性保存进txt
import argparse
dic = dict(a = 100)
# 创建 ArgumentParser() 对象
parser = argparse.ArgumentParser()
# 调用 add_argument() 方法添加参数
parser.add_argument("-a")
# 使用 parse_args() 解析添加的参数
args = argparse.Namespace(**dic)
# 可以打印出最终存储的参数空间属性
print(args)
# 打印参数空间中的变量
print(args.a)
with open('./option.txt',"w") as f: #设置文件对象
for i in vars(args):
f.write(i+":"+str(vars(args)[i])+'\\n')
f.close()
print("saving successfully in {}".format('./option.txt'))
参考文献
以上是关于编程54--python学习28Namespace与dict的相互转换,保存Namespace,以字典形式传入argparse的参数的主要内容,如果未能解决你的问题,请参考以下文章