Python JSON
Posted Battlefield
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python JSON相关的知识,希望对你有一定的参考价值。
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写。
JSON 函数
使用 JSON 函数需要导入 json 库:import json。
函数 | 描述 |
json.dumps | 将Python对象编码或JSON字符串 |
json.loads | 将已编码的JSON字符串编码为PYTHON对象 |
语法
json.dumps(obj, *, skipkeys=False, ensure_ascii=True, check_circular=True,allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw):
实例
以下实例将数组编码为 JSON 格式数据:
1 >>> import json 2 >>> data = {‘Status‘: 0, ‘Message‘: ‘成功‘, ‘TotalPage‘: 178, ‘Keyword‘: "fu‘yao", ‘SourceName‘: ‘Portfolio‘} 3 >>> json.dumps(data) 4 ‘{"Status": 0, "Message": "\u6210\u529f", "TotalPage": 178, "Keyword": "fu‘yao", "SourceName": "Portfolio"}‘ 5 >>>
1 >>> json.dumps(data, ensure_ascii=True) 2 ‘{"Status": 0, "Message": "\u6210\u529f", "TotalPage": 178, "Keyword": "fu‘yao", "SourceName": "Portfolio"}‘ 3 >>> 4 >>> json.dumps(data, ensure_ascii=False) 5 ‘{"Status": 0, "Message": "成功", "TotalPage": 178, "Keyword": "fu‘yao", "SourceName": "Portfolio"}‘ 6 >>>
使用参数让 JSON 数据格式化输出:
1 >>> print(json.dumps(data, ensure_ascii=False, sort_keys=True, indent=4)) 2 { 3 "Keyword": "fu‘yao", 4 "Message": "成功", 5 "SourceName": "Portfolio", 6 "Status": 0, 7 "TotalPage": 178 8 } 9 >>>
python 原始类型向 json 类型的转化对照表:
Python | JSON |
---|---|
dict | object |
list, tuple | array |
str, unicode | string |
int, long, float | number |
True | true |
False | false |
None | null |
json.loads
json.loads 用于解码 JSON 数据。该函数返回 Python 字段的数据类型。
语法
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
实例
以下实例展示了Python 如何解码 JSON 对象:
1 >>> json_str = ‘{"Status": 0, "Message": "成功", "TotalPage": 178, "Keyword": "fu‘yao", "SourceName": "Portfolio"}‘ 2 >>> json.loads(json_str) 3 {‘Status‘: 0, ‘Message‘: ‘成功‘, ‘TotalPage‘: 178, ‘Keyword‘: "fu‘yao", ‘SourceName‘: ‘Portfolio‘} 4 >>>
json 类型转换到 python 的类型对照表:
JSON | Python |
---|---|
object | dict |
array | list |
string | unicode |
number (int) | int, long |
number (real) | float |
true | True |
false | False |
null | None |
更多内容参考:https://docs.python.org/3.6/library/json.html
以上是关于Python JSON的主要内容,如果未能解决你的问题,请参考以下文章
json 可视代码工作室Angular with Firebase片段
错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”