2014-06-30 40 views
1

我想設置在Python 3.通過PHPSerialize去系列化的值,我相信這是一本字典,但我已經遇到了一個錯誤:的Python/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): 
    self.mysql.execute('SELECT data FROM users WHERE id='+str(self.id)) 
    result=self.mysql.fetchone() 
    return phpserialize.loads(result[0]) 

幫助?

回答

0

你能打印出isinstance(result, dict)的結果嗎?這將檢查'method'是否真的是一個字典對象。它可能已經被初始化爲不可變的東西。雖然我不確定這個「方法」對象初始化的位置,但爲了保留字典的結構,使用results = copy.deepcopy(dictionary_object_here)可能會有所幫助。有關「自我」的類別的其他信息將有所幫助

相關問題