【编程54--python学习28】Namespace与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)

image-20210516194442350

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)

image-20210516194630899

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'))

image-20210516194845567
image-20210516195121257

参考文献

【python】dict 和 Namespace 之间的转换_颹蕭蕭-CSDN博客

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值