我正在尝试将一个对象列表的json转储写入文件。 该对象如下所示:
class Pokemon:
def __init__(self, id, names, genus = None):
self.id = id
self.names = names
def dict(self):
return OrderedDict([("id", self.id), ("names", self.names)]) #force specific key order
self.names
是一个包含语言ID和相应名称的字典,其中一些是日语,韩语和中文。稍后在我的代码中,我将列表保存为JSON,如下所示:
with codecs.open("pkmn.json", "w", encoding="utf8") as outfile:
json.dump([p.dict() for p in pokemon], outfile, indent = 2)
但不是“フシギダネ”,“이상해씨”和“妙蛙种子”,我得到了难以理解的胡言乱语,如下图所示。
如何让Python正确地将这些字符串保存到文件?