python字典和JSON

Python 字典和 JSON 都是用于存储和传输数据的常用结构。

概述

  • Python 字典:一种包含键值对的数据结构,属于 Python 内置的数据类型。
  • JSON(JavaScript Object Notation):一种轻量级的数据交换格式,常用于在网络上传输数据,以文本格式表示。JSON 是语言无关的,但目前在多数编程语言中都有很好的支持。

比较

特性 Python 字典 JSON
数据格式 Python 内置数据类型 文本格式,可跨编程语言和平台使用
用途 存储和操作 Python 代码中的数据 数据交换和传输
键的类型 键可以是任何不可变类型(如字符串、整数、元组等) 键必须是字符串
值的类型 值可以是任何数据类型 值可以是字符串、数值、对象、数组、布尔值或 null
表示方法 d = {"key": "value"} JSON 字符串:{"key": "value"}
嵌套 可以嵌套任意复杂的 Python 对象 可以嵌套多个 JSON 对象
可读性 是 Python 程序的一部分 是独立于任何编程语言的文本
标准化 Python 特有,不通用 是一种广泛使用的标准化格式

示例对比

在 Python 中,常使用 json 模块来实现 Python 字典和 JSON 之间的转换。

序列化(将 Python 字典转换为 JSON 字符串)

python 复制代码
import json

data = {
    "name": "John",
    "age": 30,
    "is_student": False,
    "courses": ["Math", "Science"],
    "address": {
        "line1": "123 Main St",
        "city": "New York",
        "zipcode": "10001"
    }
}

json_string = json.dumps(data)
print(json_string)

反序列化(将 JSON 字符串转换为 Python 字典)

python 复制代码
import json

json_string = '{"name": "John", "age": 30, "is_student": false, "courses": ["Math", "Science"], "address": {"line1": "123 Main St", "city": "New York", "zipcode": "10001"}}'

data = json.loads(json_string)
print(data)
相关推荐
NeilYuen1 分钟前
【C++】STL源码仿写(二):vector
开发语言·c++
蜗牛互联网41 分钟前
Python消费Responses SSE事件:增量文本、超时与取消
java·开发语言·人工智能·后端·python
statistican_ABin1 小时前
中国国际旅游发展分析报告—基于世界银行国际旅游数据的多维度分析
python·机器学习·旅游
weixin_307779131 小时前
C++代码实现MATLAB中的crossval函数功能
开发语言·c++·算法·matlab
ttwuai1 小时前
Go后台管理系统开源项目:4个官方仓库怎么追溯和核验
开发语言·golang·开源
谢亮_vipxieliang1 小时前
Go Worker Pool 设计——从原理到生产级实现
开发语言·后端·golang
青少儿编程课堂1 小时前
背包问题(0/1 背包与完全背包)解题精讲——动态规划入门
c++·python·算法·bfs·信息学竞赛
code2cat2 小时前
【随笔】MCP工具注解的信任边界:四个提示如何参与调用决策
python·ai agent·mcp
慢云智慧空间2 小时前
从设备智能到空间理解,慢云科技如何重新定义智慧建筑
python·科技
浮链序2 小时前
用 Claude Haiku 5.5 做子智能体路由,把 Agent 成本砍掉六成
人工智能·python·llm