JSON的基础使用

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它基于JavaScript编程语言的一个子集,但独立于语言,许多编程语言都支持JSON。

JSON的基本结构包括两种类型:对象(object)和数组(array)。对象是由键值对组成的无序集合,键是字符串,值可以是字符串、数字、布尔值、null、对象或数组。数组是由有序的值组成的集合,值可以是任何JSON支持的类型。

以下是一个简单的JSON示例:

```json

{

"name": "张三",

"age": 30,

"isStudent": false,

"courses": ["语文", "数学", "英语"],

"address": {

"city": "北京",

"street": "朝阳路"

}

}

```

在Python中,可以使用`json`模块来处理JSON数据。以下是一些常用的操作:

  1. 将Python对象转换为JSON字符串:

```python

import json

data = {

"name": "张三",

"age": 30,

"isStudent": False,

"courses": ["语文", "数学", "英语"],

"address": {

"city": "北京",

"street": "朝阳路"

}

}

json_string = json.dumps(data)

print(json_string)

```

  1. 将JSON字符串转换为Python对象:

```python

import json

json_string = '{"name": "张三", "age": 30, "isStudent": false, "courses": ["语文", "数学", "英语"], "address": {"city": "北京", "street": "朝阳路"}}'

data = json.loads(json_string)

print(data)

```

  1. 从文件中读取JSON数据:

```python

import json

with open('data.json', 'r', encoding='utf-8') as f:

data = json.load(f)

print(data)

```

  1. 将Python对象写入JSON文件:

```python

import json

data = {

"name": "张三",

"age": 30,

"isStudent": False,

"courses": ["语文", "数学", "英语"],

"address": {

"city": "北京",

"street": "朝阳路"

}

}

with open('data.json', 'w', encoding='utf-8') as f:

json.dump(data, f, ensure_ascii=False, indent=4)

```

相关推荐
CSCN新手听安6 小时前
【linux】网络基础(三)TCP服务端网络版本计算器的优化,Json的使用,服务器守护进程化daemon,重谈OSI七层模型
linux·服务器·网络·c++·tcp/ip·json
bloglin999997 小时前
Qwen3-32B报错Invalid json output:{“type“: “1“}For troubleshooting, visit
llm·json
Trouvaille ~7 小时前
【Linux】应用层协议设计实战(二):Jsoncpp序列化与完整实现
linux·运维·服务器·网络·c++·json·应用层
剩下了什么17 小时前
MySQL JSON_SET() 函数
数据库·mysql·json
梦帮科技1 天前
Node.js配置生成器CLI工具开发实战
前端·人工智能·windows·前端框架·node.js·json
数据知道1 天前
PostgreSQL实战:详解如何用Python优雅地从PG中存取处理JSON
python·postgresql·json
缘空如是2 天前
基础工具包之JSON 工厂类
java·json·json切换
墨痕诉清风2 天前
CVS文件转Json格式
json·python3·cvs
数研小生2 天前
1688商品列表API:高效触达批发电商海量商品数据的技术方案
大数据·python·算法·信息可视化·json
devmoon2 天前
快速了解兼容 Ethereum 的 JSON-RPC 接口
开发语言·网络·rpc·json·区块链·智能合约·polkadot