Skip to main content
 首页 » 编程设计

Python字典json

2025年05月04日10落叶无声

我正在使用 dict 创建一个 json 对象,但我在使用 dict 和 json 时遇到了一些问题!

def get(self): 
 
    players = db.GqlQuery("SELECT * FROM Player") 
 
    playerInfo  = {} 
 
 
 
    for player in players: 
        email = player.email.encode("utf-8") 
        gem =  str(player.gem) 
 
        print email 
        print gem 
 
        playerInfo["email"] = email 
        playerInfo["gem"] = gem 
 
 
    b = json.dumps(playerInfo) 
 
    self.response.out.write(b) 

出于某种原因,我只收到一个和 for 循环,当我在 for 循环中打印电子邮件时,我收到了 6 个结果,但 playerInfo 的输出只有一组数据。

{"email": "test1", "gem": "0"} 

我的预期结果应该是

{"email": "test1", "gem": "0"},{"email": "test2", "gem": "2"}... 

请您参考如下方法:

你想要的,我想是一个字典列表。这将使您能够存储多个实体:

players = db.GqlQuery("SELECT * FROM Player") 
 
playerInfo  = [] 
 
for player in players: 
    email = player.email.encode("utf-8") 
    gem =  str(player.gem) 
 
    playerInfo.append({"email" :email, "gem": gem}) 
 
b = json.dumps(playerInfo) 
 
self.response.out.write(b) 

此外,您确实希望避免在您的 AppEngine 应用程序中使用 print。请改用日志记录,因为 print 可能会产生意想不到的副作用。