Python:从类方法返回dict到main()

时间:2015-02-06 20:41:28

标签: python class methods return

我很困惑,无法表达适当的googlefu来解决这个问题。我正在使用argparse尝试使用CLI args来创建字典。如何从课堂上返回jdict?或者可以调用,以便我可以将它附加到另一个字典并写入文件?我希望避免铺设其余的代码(读取json文件,附加新的dict,写入文件)

class MakeData:
    def __init__(self, args):
        self.args = args

    # Args taken, make dict with
    def makejson(self):
        self.jdict = {
            "key1": self.args.srv[0],
            "key2": self.args.srv[1],
            "key3": self.args.srv[2]
        }
        return self.jdict

def main():
    args = get_args()
    s = MakeData(args)
    s.makejson()

    # want to print jdict here, made from above class method
    print jdict

1 个答案:

答案 0 :(得分:3)

您将在显示的代码中返回jdict。您只是没有使用变量来存储它。

jdict = s.makejson()
print jdict

或者,简单地说,

print s.jdict

也可以工作..这意味着不需要返回变量