python vars()的用法

将属性/参数和属性值/参数值变为字典输出,如下例子

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('-Ap','--Add_prior',default='True', choices=['True','False'],
                    help='Whether to consider prior information, default=True')
parser.add_argument('-skyf','--sky_fraction',default='small',choices=['small','large'],
                    help='Choose a small(0.05)/large(0.7) sky fraction, default=small')
parser.add_argument('-r','--r',default=0.01,choices=['0','0.1','0.01'],
                    help='input tensor to scalar ratio, default=0.01')
parser.add_argument('-nu1',default=95,
                    help='input first frequency, default=95')
parser.add_argument('-nu2',default=150,
                    help='input second frequency, default=150')
args = parser.parse_args()

这是一个argparse的例子,可以不用理解这是什么含义,我们输出args
在这里插入图片描述
可见args有好几个参数,为Add_prior,值为True,nu1值为95等等,现在要将这些参数和参数值变成字典输出
在这里插入图片描述
例2
定义一个类的时候,把里面的参数弄成字典形式方便以后使用

class Function:
  def __init__(self, a = 5, b = 10):
    self.a = a
    self.b = b
  def add_(x,y):
      return(x+y)
      
InstanceOfFunction = Function()
print(vars(InstanceOfFunction))

>> {'a': 5, 'b': 10}

猜你喜欢

转载自blog.csdn.net/Mr_Cat123/article/details/90523179