Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除python输出中的'u'字符_Javascript_Python_Google App Engine_Angularjs - Fatal编程技术网

Javascript 删除python输出中的'u'字符

Javascript 删除python输出中的'u'字符,javascript,python,google-app-engine,angularjs,Javascript,Python,Google App Engine,Angularjs,我创建了一个表单,当我单击submit按钮时,我将3的值分配到一个javascript dict中,并将其发送到一个python脚本进行处理,但是我的web浏览器告诉我一个错误 来自Json错误:{u'food':90,u'cargo':70,u'fuel':50}语法错误 controller.js function customiseCtrl($xhr){ var self = this; checkPoint(); this.process = function(){ if (c

我创建了一个表单,当我单击submit按钮时,我将3的值分配到一个javascript dict中,并将其发送到一个python脚本进行处理,但是我的web浏览器告诉我一个错误

来自Json错误:{u'food':90,u'cargo':70,u'fuel':50}语法错误

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;

        });
    }
};


}
/进程-->python脚本(我正在尝试读取“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)

问题不在JavaScript中(根据您的原始标题),而是在JSON的输出中。您需要输出正确的格式,如果它看起来像
{u'food':90,u'cargo':70,u'fuel':50}
self.response.out.write(info)
不起作用(用于验证JSON文本)

我不是什么巨蟒头(事实上,我根本不是巨蟒头),但我认为你想取代我

self.response.out.write(info)


…或类似内容(以上假设
self.response
是一个“…a
.write()
-支持类似文件的对象…”),基于。

打印Python dict在许多情况下不会生成有效的JSON。您想要
JSON
模块:

import json

# ... snip ...

self.response.out.write(json.dumps(info))
# or
json.dump(info, self.response.out)

Python的
repr
(此处隐式调用)不是为了生成JSON.dump的
JSON.dump(info,self.response)的可能副本
如果是像ObjectThank这样的文件,也可能会起作用谢谢,他补充道。这两者之间可能有性能差异吗?对于复杂或大型数据集,是的,使用
json.dump
会更有效。我想为了像您一样使用
self.response.out
,您需要
json.dump
,它会写入像obje这样的文件ct,而不是返回字符串的
json.dumps
。@nrabinowitz:实际上,当使用
.write()
时,使用
dumps()
方法是非常好的。但是当然,使用
dumps()是可以的
速度稍微快一点,因为json可以直接写入对象,而无需创建包含所有内容的字符串。但是,对于
self.response
可能是stringio或类似的对象,这并不重要。
import json

# ... snip ...

self.response.out.write(json.dumps(info))
# or
json.dump(info, self.response.out)