Python/PHPSerialize类型错误:';方法';对象不支持项分配
我想在Python3中设置一个值。它是通过PHPSerialize未序列化的,我相信它是一本字典,但我遇到了一个错误:Python/PHPSerialize类型错误:';方法';对象不支持项分配,php,python,serialization,Php,Python,Serialization,我想在Python3中设置一个值。它是通过PHPSerialize未序列化的,我相信它是一本字典,但我遇到了一个错误: TypeError: 'method' object does not support item assignment. 我的代码: def setValue(self, p, set): a = self.getData() a[p] = set return self.updateData(a) def getData (self): s
TypeError: 'method' object does not support item assignment.
我的代码:
def setValue(self, p, set):
a = self.getData()
a[p] = set
return self.updateData(a)
def getData (self):
self.mysql.execute('SELECT data FROM users WHERE id='+str(self.id))
result=self.mysql.fetchone()
return phpserialize.loads(result[0])
帮助?您能打印出isinstance(result,dict)的结果吗?这将检查“方法”是否真的是字典对象。它很可能被初始化为不可变的东西。虽然我不确定此“方法”对象是在哪里初始化的,但使用
results=copy.deepcopy(dictionary\u object\u此处)
以保留字典的结构可能会有所帮助。关于“self”所指的类的其他信息会有所帮助