为了账号安全,请及时绑定邮箱和手机立即绑定

对象不可 json 序列化

对象不可 json 序列化

MM们 2021-09-24 15:10:57
在 python 中编码时,我收到一个错误:“myObject 类型的对象不是 JSON 可序列化的”我尝试使用我在其他问题中看到的一些解决方案,但是我没有发现我的代码和那些问题中的代码有很多相似之处,因此我发现很难在我的代码中调整解决方案。我的脚本的一部分如下。错误发生在第一个块的最后一行:import jsonimport osfrom my_object import myObjectfor a in A_set:    if os.path.isfile(filename):        with open(filename, 'r') as f:            json_data = json.load(f)        object_name = myObject.from_json(json_data)    else:        object_name = myObject(a)        object_name.property_A = property_A        object_name.property_C = []    object_name.property_C_add_elements(var)    with open(filename, 'w') as f:        json.dump(object_name.to_json(), f)在另一个 python 文件中定义了“myObject”类,其中还有方法“to_json()”,我在产生错误的代码行中调用它。class myObject:    def __init__(self, name):        self.name = name        self.property_A = property_A        self.property_B = property_B        self.property_C = []    def property_C_add_elements(self, var):          self.property_C.append(var)    def to_json(self):        return {            'Name': self.name,            'property A': self.property_A,            'property B': self.property_B,            'property C': self.property_C        }    @classmethod    def from_json(cls, jason_data):        object_name = myObject(jason_data['property A'])        property_B = myObject(jason_data['property B'])        c_list = []        for var in jason_data['property C']:            c_list.append(myObject(var))        object_name.property_B = property_B        object_name.property_C = c_list        return object_name如果我能找到该问题的解决方案,我会很高兴。提前致谢。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 203 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号