编程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)

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博客

以上是关于编程54--python学习28Namespace与dict的相互转换,保存Namespace,以字典形式传入argparse的参数的主要内容,如果未能解决你的问题,请参考以下文章

C++编程基础学习第二课

python学习----8.28---单例模式,网络编程

28个在线游戏编程学习网站

28个在线游戏编程学习网站

28个在线游戏编程学习网站

错误:“无法创建未知类型 'clr-namespace:NameSpace.PropertiesSettings'。”