gpt4 book ai didi

python - 使用 json 和 python 序列化/反序列化对象列表

转载 作者:行者123 更新时间:2023-11-28 20:39:37 25 4
gpt4 key购买 nike

我如何将对象列表(人)序列化为 json 文件,然后读回该 json 文件并将它们反序列化为对象?我知道如何写入 json 文件,但我不清楚如何将我的对象正确转换为 json。

下面是我简化的代码片段。我有一个包含两个人的列表,我想将它们序列化并保存到一个 json 文件中。然后将它们反序列化回 People 类型的对象。

感谢您的帮助。

import json

class Person(object):
def __init__(self, name, nickname):
self.name = name
self.age = 0
self.nickname = nickname

# create a few people
A = Person('John', 'Joker')
B = Person('Marisa', 'Snickerdoodle')

# add people to list
peeps = []
peeps.append(A)
peeps.append(B)

# dummy data saving to json for testing
data = {
'name' : 'ACME',
'shares' : 100,
'price' : 542.23
}

with open('data.json', 'w') as outfile:
json.dump(data, outfile)

最佳答案

json 模块需要列表、字典、字符串、数字、 bool 值和 None,而不是自定义类。您需要根据您的 People 实例制作一本字典。一个简单的方法是使用 vars(A)

关于python - 使用 json 和 python 序列化/反序列化对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37758665/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com