Python 的Json 模块编码详解

作者:m0_64430632 时间:2023-03-19 08:29:15 

可以用函数 json.dumps()将 Python 对象编码转换为字符串形式。

例如:


import json
python_obj = [[1,2,3],3.14,'abc',{'key1':(1,2,3),'key2':[4,5,6]},True,False,None]
json_str=json.dumps(python_obj)
print(json_str)

输出:

[[1, 2, 3], 3.14, "abc", {"key1": [1, 2, 3], "key2":
[4, 5, 6]}, true, false, null]

简单类型对象编码后的字符串和其原始的 repr()结果基本是一致的,但有些数据类型,如上例中的元组(1, 2, 3)被转换成了[1, 2, 3](json 模块的 array 数组形式)。
可以向函数 json.dumps()传递一些参数以控制转换的结果。例如,参数 sort_keys=True 时,dict 类型的数据将按key(键)有序转换:


data = [{'xyz': 3.0,'abc': 'get', 'hi': (1,2) },'world','hello']
json_str = json.dumps(data)
print(json_str)
json_str = json.dumps(data, sort_keys=True)
print(json_str)

输出:

[{"xyz": 3.0, "abc": "get", "hi": [1, 2]}, "world", "hello"]
[{"abc": "get", "hi": [1, 2], "xyz": 3.0}, "world", "hello"]

即当 sort_keys=True 时,转换后的 json 串对于字典的元素是按键(key)有序的。
对于结构化数据,可以给参数 indent 设置一个值(如 indent=3)来产生具有缩进的、阅读性好的json 串:


json_str = json.dumps(data, sort_keys=True,indent = 3)
print(json_str)

输出:

[
    {
        "abc": "get",
        "hi": [
            1,
            2
        ],
        "xyz": 3.0
    },
    "world",
    "hello"
]

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

来源:https://blog.csdn.net/m0_64430632/article/details/121598998

标签:Python,Json,模块,编码
0
投稿

猜你喜欢

  • 利用Pandas索引和选取数据方法详解

    2023-04-30 23:30:07
  • sql server常用命令行操作(启动、停止、暂停)

    2012-01-05 19:02:48
  • SQL server高级应用 收藏版

    2012-10-07 11:04:06
  • 简单好用的PHP分页类

    2023-11-22 09:32:39
  • Python 使用office365邮箱的示例

    2023-01-10 00:18:17
  • JavaScript编写推箱子游戏

    2024-03-17 17:47:32
  • python 列表元素左右循环移动 的多种解决方案

    2023-06-15 06:21:45
  • Python 3.10 中 6 个兴奋的新特性

    2021-02-21 03:30:26
  • 阿里巴巴中秋节logo设计的艰辛曲折过程

    2008-09-11 17:15:00
  • MySQL动态字符串处理DYNAMIC_STRING

    2024-01-26 01:20:19
  • 网站设计输入了些什么?

    2008-04-01 09:30:00
  • python实现的多任务版udp聊天器功能案例

    2021-07-31 21:49:29
  • Tensorflow中的降维函数tf.reduce_*使用总结

    2021-10-18 15:16:14
  • python中logging模块的一些简单用法的使用

    2023-08-12 09:28:17
  • asp智能脏话过滤系统v1.0

    2011-04-14 11:00:00
  • kali 2021新手安装教程与配置图文详解

    2022-04-18 01:32:36
  • sql动态行转列的两种方法

    2024-01-24 07:17:41
  • python matplotlib折线图样式实现过程

    2022-10-28 12:18:08
  • 使用pyinstaller打包PySide2程序中遇到的问题

    2023-02-10 18:23:32
  • 基于Python爬取京东双十一商品价格曲线

    2022-10-22 04:04:42
  • asp之家 网络编程 m.aspxhome.com