1
我在這個問題上工作了兩天,我的想法是從這個模型:如何從數據存儲模型創建嵌套字典?
class oceni(db.Model):
user = db.UserProperty()
weight = db.FloatProperty()
item = db.StringProperty()
..to創建字典的格式如下:
collection = dict()
collection = {
'user1':{'item1':weight1,'item2':weight2..},
'user2':{'item3':weight3,'item4':weight4..},
..}
..和遠我達到的是這樣的:
kontenier = db.GqlQuery('SELECT * FROM oceni')
kolekcija = dict()
tmp = dict()
lista = []
for it in kontenier:
lista.append(it.user)
set = []
for e in lista:
if e not in set:
set.append(e)
for i in set:
kontenier = db.GqlQuery('SELECT * FROM oceni WHERE user=:1',i)
for it in kontenier:
tmp[it.item]=it.weight
kolekcija[i]=tmp
..但是這創建了一個字典,其中所有的用戶都有相同的字典與項目和它們的權重。我知道這不是最pythonic的方式,但我是新來的,所以我會渴望學習更多關於這個問題的東西。
這是一個好主意,不要使用變量名稱的類型名稱(即使在你自己的語言)。最好使用屬於問題/解決方案域的名稱。 – Apalala 2011-02-03 05:57:43
@Apalala這寫的是屬於我的問題域的名稱,但我重命名了其中的一些,所以代碼將更容易理解你.. – Kex 2011-02-03 11:21:14