Python TypeError:{1,3}不可JSON序列化

Python TypeError:{1,3}不可JSON序列化,python,json,python-3.x,serialization,set,Python,Json,Python 3.x,Serialization,Set,我是Python的乞丐,对JSON有点问题。在我使用的教程中,有两个函数: def read_json(filename): data = [] if os.path.isfile(filename): with open(filename, "r") as f: data = json.load(f) return data def save_json(filename, data): with open(filena

我是Python的乞丐,对JSON有点问题。在我使用的教程中,有两个函数:

def read_json(filename):
    data = []
    if os.path.isfile(filename):
        with open(filename, "r") as f:
            data = json.load(f)
    return data


def save_json(filename, data):
    with open(filename, "w") as f:
        json.dump(data, f)
但当我试图保存数据时,保存时出现错误:

raise TypeError(repr(o) + " is not JSON serializable")
TypeError: {1, 3} is not JSON serializable
有人能帮我吗

{1,3}
是一个,正如错误所指出的,它不能序列化为JSON-JSON中唯一的集合是列表(JSON中称为数组)和字典(JSON中称为对象)

您需要将其转换为列表:

converted = list(my_data)
save_json(my_filename, converted)

您可以发布您正在编写的json示例数据,并检查您正在写入文件的类型(数据)。很高兴听到这个消息。如果您愿意,您可以通过单击旁边的复选标记来找到解决问题的答案。。。这让其他人知道解决方案是有效的。当然。我会的。