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)
相关推荐
敲代码的嘎仔15 分钟前
实习日志day6--实习日志day6--title命名规范化&businessType纠正&补充缺失的@Log注解&报警与通信模块补充&产出阶段总结文档
java·开发语言·人工智能·git·python·实习·大二
江华森33 分钟前
Python 实现高德地图找房(一):环境搭建与数据爬虫
开发语言·爬虫·python
杜子不疼.34 分钟前
【Qt初识】信号槽(三):机制意义、断开连接与 Lambda 表达式
开发语言·数据库·qt
VIP_CQCRE1 小时前
用 Ace Data Cloud 快速接入 OpenAI Chat Completions:对话、流式、多轮和多模态一篇打通
python·ai·openai·api·教程
老迟到的茉莉2 小时前
Hermes 是谁?跟 Claude Code 差在哪
开发语言·python
学逆向的2 小时前
汇编——内存
开发语言·汇编·算法·网络安全
Day(AKA Elin)2 小时前
【Day】MTP(Multi Token Prediction)技术学习
python·深度学习·学习·llama
lbb 小魔仙2 小时前
MuMu 模拟器 6.0 硬核测评:这次升级确实不一样
java·开发语言·模拟器·mumu·硬核测评
r_oo_ki_e_2 小时前
Java 线程池
java·开发语言
杜子不疼.3 小时前
【Qt初识】信号槽(二):自定义信号函数与槽函数
开发语言·qt