Python json模块dumps与loads函数详解及示例
本文介绍Python中json模块的dumps和loads函数用法。dumps用于将Python对象序列化为JSON字符串,支持缩进和编码控制;loads用于将JSON字符串反序列化为Python对象。通过示例展示字典转JSON及读取元素的方法,并附带在线工具推荐。
本文详细介绍Python中json模块的dumps和loads函数的具体操作,供读者参考学习。
讲解Python中处理JSON数据的基本方法。
dumps和loads函数通常成对使用,类似于C++中new与delete或malloc与free的配对关系。
注意,看起来像JSON格式的字符串,并不一定就是合法的JSON字符串。
以下通过具体代码示例进行说明。
# -*- coding:utf-8 -*-
#! python2
import json
data = {"name":"张三", "age":18, "friend":["王麻子", "李四"]}
print data
print json.dumps(data)
print json.dumps(data, indent=4) ##设置输出格式
print json.dumps(data, indent=4, ensure_ascii=False) ##非二进制编码
print "*" * 50
data_str = json.dumps(data, indent=4, ensure_ascii=False)
data_js = json.loads(data_str)
print data_js["age"] ##读取元素
print data_js.get("chengshi", "bj") ##如果读取不到可以设置默认值
程序运行输出结果如下:
{'age': 18, 'name': '\xe5\xbc\xa0\xe4\xb8\x89', 'friend': ['\xe7\x8e\x8b\xe9\xba\xbb\xe5\xad\x90', '\xe6\x9d\x8e\xe5\x9b\x9b']} {"age": 18, "name": "\u5f20\u4e09", "friend": ["\u738b\u9ebb\u5b50", "\u674e\u56db"]} { "age": 18, "name": "\u5f20\u4e09", "friend": [ "\u738b\u9ebb\u5b50", "\u674e\u56db" ] } { "age": 18, "name": "张三", "friend": [ "王麻子", "李四" ] } ************************************************** 18 bj
此外,推荐几款实用的JSON在线工具供参考:
在线JSON代码检验、美化、格式化工具: http://tools.jb51.net/code/json
JSON在线格式化工具: http://tools.jb51.net/code/jsonformat
在线XML与JSON互相转换工具: http://tools.jb51.net/code/xmljson
JSON代码在线格式化、美化、压缩、编辑及转换工具: http://tools.jb51.net/code/jsoncodeformat
在线JSON压缩与转义工具: http://tools.jb51.net/code/json_yasuo_trans
更多Python相关内容感兴趣的读者可查看本站专题:《Python操作json技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述内容对大家学习Python程序设计有所帮助。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













