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)
相关推荐
初级代码游戏6 分钟前
iOS开发 Swift 速记7:结构体和类
开发语言·ios·swift
golang学习记10 分钟前
Go 项目使用docker compose的正确方式
开发语言·docker·golang
xcLeigh1 小时前
编程语言的 AI 友好度排名:Python、JavaScript、TypeScript 谁更适合 AI 辅助
javascript·人工智能·python·ai·typescript·ai编程
Albart5751 小时前
【已解决】ModuleNotFoundError_ No module named ‘xxx’ 模块导入失败终极解决
python·pip·环境配置·后端开发·bug解决·模块报错·python导包失败
Dr.kangder2 小时前
嵌入式总线设备解析——TTE总线应用与实践
开发语言·网络·算法·嵌入式·多任务·同步机制
-银雾鸢尾-2 小时前
C#中的多线程
开发语言·c#
2401_858286112 小时前
OS82.【Linux】设计线程池
java·linux·运维·服务器·开发语言·算法·线程池
数据知道2 小时前
IDOR 不安全的直接对象引用:API 越权实战检测
java·开发语言·网络·安全·网络安全