Python 的 json.load(sys.stdin) 让我用'...'代替字符串周围的双引号

标签 python json parse-platform

当我这样做时:

import sys, json;
import requests

headers = {'Content-Type': 'application/json',
       'X-Parse-Application-Id': '...',
       'X-Parse-REST-API-Key': '...'}

data = json.load(sys.stdin)
for station in data["data"]:
    print station
    res = requests.post('https://api.parse.com/1/classes/test4', data=station, headers=headers)

我明白了

{u'city': u'London',
...
}

当我尝试将其发布到 Parse.com 时,它不是有效的 Json

{"code":107,"error":"invalid JSON"}

任何 JSON 验证器都会给我 Error:Strings should be wrapped in double quotes.

如何为数据制作一个有效的JSON?

最佳答案

print 将只打印您传递的对象的 python 表示(您使用 json.load 反序列化)。试试这个:

import sys, json;
data = json.load(sys.stdin)
for station in data["data"]:
    print(json.dumps(station))

json.dumps 将 python 对象序列化回 json。

关于Python 的 json.load(sys.stdin) 让我用'...'代替字符串周围的双引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34590412/

相关文章:

swift - 如何将变量从 Swift 传递到 Cloud Code?

python - 如何使用python抓取javascript生成的html?

python 3解决数据框问题

javascript - 通过 API 响应实现站点自动化

java - 读取下载的文本文件 - FileNotFoundException

java - Google 端点模型,如何使用 Parcelable、Serializable 或 JSON 字符串将数据发送到 Intent

javascript - 如何在 Parse Cloud 代码上使用 Javascript SDK 克隆 Parse 查询?

python - 如何在python中控制多个进程对文件的访问

python - 图例中的顺序图 python

ios - 如何启动 OpenTok/TokBox session 存档?