1、如何读写json数据?

        实际案例:

                在web应用中常用JSON(JavaScript Object Notation)格式传输数据,例如我们利用Baidu语音识别服务器做语音识别,将本地音频数据post到Baidu语音识别服务器,服务器响应结果为json字符串:

                {"corpus_no":"6303355448008565863",

                "err_mg":"sucess.", "err_no":0, "result":["您好,"],

                "sn":"418359718861467614305"}

                在python中如何读写json数据?

        解决方案:

                使用标准库中的json模块,其中loads,dumps函数可以完成json数据的读写。

                注:百度语音识别文档 https://ai.baidu.com/ai-doc/SPEECH/ek38lxj1u

2、代码演示

l = [1, 2, 'abc', {'name': 'Bob', 'age': 13}]
# (1)dumps可以将python对象转换成json字符串
print(json.dumps(l))
# 调整json字符串输出形式,去掉空格
# 将默认分隔符的逗号和冒号去掉空格
print(json.dumps(l, separators=(',', ':')))

d = {'b': None, 'a': 5, 'c': 'abc'}
print(json.dumps(d))
# 对输出的键进行排序,sort_keys默认为False
print(json.dumps(d, sort_keys=True))

# (2)将json字符串转换成python对象
l2 = json.loads('[1, 2, "abc", {"name": "Bob", "age": 13}]')
print(l2[0])
d2 = json.loads('{"b": null, "a": 5, "c": "abc"}')
print(d2)

# (3)load和dump
'''
load和dump与loads和dumps功能是一致的,
只不过接口不一样,load和dump接口是一个文件。
'''
with open('demp.json', 'w') as f:
    # 将json数据写进一个文件当中去
    json.dump(l, f)

with open('demp.json', 'r') as f:
    # 读取demp.json文件内容
    j = json.load(f)
    print(j)

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 3 个月前
8c391e04 6 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐