Python json模块dumps与loads函数详解及示例

Leo
Leo
发布时间:2026-10-13 | 2人浏览过
原创

本文介绍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程序设计有所帮助。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表