从python2.6开始,python标准库中添加了对json的支持,操作json时,只需要import json即可。
在把python对象转换成json字符串时,只需要如下知识即可:
1.python对象到json字符串的转换规则:
Python | JSON |
---|---|
dict | object |
list, tuple | array |
str, unicode | string |
int, long, float | number |
True | true |
False | false |
None | null |
2. 主要使用如下函数:
该函数的具体参数(具体用法参见附录中链接):
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding=”utf-8”, default=None, sort_keys=False, **kw)
示例
测试代码:
1
2
3
4
5
6
7
8
9
10
|
#构造字典
python2json = {}
#构造list
listData = [1,2,3]
python2json["listData"] = listData
python2json["strData"] = "test python obj 2 json"
#转换成json字符串
json_str = json.dumps(python2json)
print json_str
|
转换结果:
1
2
3
4
5
6
7
8
|
{
"listData": [
1,
2,
3
],
"strData": "test python obj 2 json"
}
|
三、json字符串转换成python对象
同理,把json字符串转换成python对象也只需具备如下知识即可:
1.json字符串到python对象的转换规则:
JSON | Python |
---|---|
object | dict |
array | list |
string | unicode |
number (int) | int, long |
number (real) | float |
true True | |
false | False |
null | None |
2. 主要使用如下函数:
1
|
json.loads()
|
该函数的具体参数(具体用法参见附录中链接):
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
示例
测试代码:
1
2
3
|
str = '{"listData": [1, 2, 3], "strData": "test python obj 2 json"}'
json2python = json.loads(str)
print type(json2python)
|
转换结果:
1
|
< type 'dict'>
|
四、附录
https://docs.python.org/2/library/json.html
http://www.zzvips.com/article/104378.html
以上这篇python 对象和json互相转换方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:http://blog.csdn.net/tterminator/article/details/63289400