Bri*_* Li 1 python google-app-engine
我正在使用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)
Run Code Online (Sandbox Code Playgroud)
出于某种原因,我只收到一个和for循环,当我在for循环中打印电子邮件时,我收到了6个结果,但是playerInfo的输出只有1组数据.
{"email": "test1", "gem": "0"}
Run Code Online (Sandbox Code Playgroud)
我的预期结果应该是
{"email": "test1", "gem": "0"},{"email": "test2", "gem": "2"}...
Run Code Online (Sandbox Code Playgroud)
你想要什么,我认为是一个词典列表.这将使您能够存储多个实体:
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)
Run Code Online (Sandbox Code Playgroud)
此外,您真的想避免print在AppEngine应用程序中使用.而是使用日志记录,因为print可能会产生意想不到的副作用.
| 归档时间: |
|
| 查看次数: |
854 次 |
| 最近记录: |