Python json模块dumps、loads操作示例

yipeiwu_com6年前Python基础

本文实例讲述了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

PS:这里再为大家推荐几款比较实用的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的Django框架中显示对象子集的方法

现在让我们来仔细看看这个 queryset 。 大多数通用视图有一个queryset参数,这个参数告诉视图要显示对象的集合。 举一个简单的例子,我们打算对书籍列表按出版日期排序,最近的排...

Python入门Anaconda和Pycharm的安装和配置详解

Python入门Anaconda和Pycharm的安装和配置详解

子曰:“工欲善其事,必先利其器。”学习Python就需要有编译Python程序的软件,一般情况下,我们选择在Python官网下载对应版本的Python然后用记事本编写,再在终端进行编译运...

Python之NumPy(axis=0 与axis=1)区分详解

Python之NumPy(axis=0 与axis=1)区分详解

python中的axis究竟是如何定义的呢?他们究竟代表是DataFrame的行还是列?考虑以下代码: >>>df = pd.DataFrame([[1, 1,...

python使用json序列化datetime类型实例解析

使用python的json模块序列化时间或者其他不支持的类型时会抛异常,例如下面的代码: # -*- coding: cp936 -*- from datetime import d...

用Python识别人脸,人种等各种信息

用Python识别人脸,人种等各种信息

最近几天了解了一下人脸识别,应用场景可以是图片标注,商品图和广告图中有没有模特,有几个模特,模特的性别,年龄,颜值,表情等数据的挖掘。 基础的识别用dlib来实现,dlib是一个机器学...