我已阅读删除列表中的字符'u',但我使用谷歌应用程序引擎,它似乎不起作用!
def get(self):
players = db.GqlQuery("SELECT * FROM Player")
print players
playerInfo = {}
test = []
for player in players:
email = player.email
gem = str(player.gem)
a = "{email:"+email + ",gem:" +gem +"}"
test.append(a)
ast.literal_eval(json.dumps(test))
print test
Run Code Online (Sandbox Code Playgroud)
最终输出:
[u'{email:test@gmail.com,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test,gem:0}', u'{email:test1,gem:0}']
Run Code Online (Sandbox Code Playgroud) 我创建一个表单,当我单击提交按钮时,我将3值分配到一个javascript dict并将其发送到python脚本进行处理但是我的Web浏览器告诉我一个错误!
来自Json错误:{u'food':90,u'cargo':70,u'fuel':50} SyntaxError
controller.js
function customiseCtrl($xhr){
var self = this;
checkPoint();
this.process = function(){
if (checkPoint()){
var newPlayer = {"fuel":value, "food":value2, "cargo":value3 };
$xhr('POST', '/process', newPlayer, function (code, response) {
self.x = response;
});
}
};
}
Run Code Online (Sandbox Code Playgroud)
/ process - > python script(我正在尝试阅读"info"的信息并将其写入Google应用引擎.
def post(self):
user = users.get_current_user()
player = Player();
info = json.loads(self.request.body)
player.fuel = info.fuel
self.response.out.write(info)
Run Code Online (Sandbox Code Playgroud) 我正在使用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)