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)
相关推荐
曹牧1 天前
C#:姓名脱敏
开发语言·c#
缺点内向1 天前
C# 中 Word 文档目录的插入与删除指南
开发语言·c#·word·.net
r***d8651 天前
Rust宏编程指南
开发语言·后端·rust
czhc11400756631 天前
C# 1120抽象类 static
java·开发语言·c#
你不是我我1 天前
【Java 开发日记】有了解过 SpringBoot 的参数配置吗?
java·开发语言·spring boot
ivanfor6661 天前
多租户架构的三级权限体系:设计逻辑与精准控制实现
java·开发语言·数据库
zzzsde1 天前
【C++】C++11(1):右值引用和移动语义
开发语言·c++·算法
学困昇1 天前
C++11中的包装器
开发语言·数据结构·c++·c++11
讨厌下雨的天空1 天前
Linux信号量
java·开发语言