Python: return 从 class 方法到 main() 的字典
Python: return dict from class method to main()
我很困惑,无法表达正确的 googlefu 来解决这个问题。我正在使用 argparse 尝试使用 CLI args 来制作字典。如何从 class 返回 jdict?或可调用以便我可以将它附加到另一个字典并写入文件?我希望避免放置其余代码(读取 json 文件、附加新字典、写入文件)
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
您正在返回所示代码中的 jdict。您只是没有使用变量来存储它。
jdict = s.makejson()
print jdict
或者,简单地说,
print s.jdict
也可以..这意味着不需要返回变量
我很困惑,无法表达正确的 googlefu 来解决这个问题。我正在使用 argparse 尝试使用 CLI args 来制作字典。如何从 class 返回 jdict?或可调用以便我可以将它附加到另一个字典并写入文件?我希望避免放置其余代码(读取 json 文件、附加新字典、写入文件)
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
您正在返回所示代码中的 jdict。您只是没有使用变量来存储它。
jdict = s.makejson()
print jdict
或者,简单地说,
print s.jdict
也可以..这意味着不需要返回变量