我正在尝试使对象与JSON相互转换。该对象使用SQL Alchemy,因此无法使用json.dumps(vars(self))
。我正在寻找使这成为可能的语法。
def to_json(self):
obj = {
self.won,
self.gameOver,
self.allowMultiColor,
self.pattern,
self.board,
self.round,
self.totalRounds
}
return json.dumps(obj)
然后我想重新定义如下字段:
def from_json(self, json_string):
obj = json.loads(json_string)
self.won = obj['won']
self.gameOver = obj['gameOver']
self.allowMultiColor = obj['allowMultiColor']
self.pattern = obj['pattern']
self.board = obj['board']
self.round = obj['round']
self.totalRounds = obj['totalRounds']
to_json
方法无效。当我尝试再次获取它时,出现此错误:TypeError: list indices must be integers or slices, not str
我是python的新手,所以我还不了解所有花哨的语法
obj必须是字典,以允许使用字符串作为索引。因此obj应该看起来像这样
obj = {
'won':self.won,
'gameOver':self.gameOver,
...
}