Python入门教程(二十八)Python中的JSON

Python入门教程(二十八)Python中的JSON

1. JSON简介

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。JSON是基于JavaScript语言的一个子集,因此在很多编程语言中都可以按照JSON的标准进行解析和生成。

JSON中定义了两种数据结构:对象和数组。对象是由键值对构成,键和值之间使用冒号“:”分隔,键值对之间使用逗号“,”分隔,最外层需要用大括号“{}”包裹;数组是由值构成,值之间使用逗号“,”分隔,最外层需要用中括号“[]”包裹。

下面是一个JSON数据的示例:

{
  "name": "Tom",
  "age": 18,
  "hobbies": ["reading", "running", "swimming"],
  "address": {
    "city": "Beijing",
    "street": "Xueyuan Road"
  }
}

2. 使用Python处理JSON

Python内置了一个名为json的模块,它提供了loads()和dumps()两个函数,用于JSON格式的编码和解码。

2.1 loads()函数

loads()函数可以将JSON格式的字符串解码为Python对象。例如,我们有如下的JSON字符串:

{
  "name": "Tom",
  "age": 18,
  "hobbies": ["reading", "running", "swimming"],
  "address": {
    "city": "Beijing",
    "street": "Xueyuan Road"
  }
}

我们可以使用loads()函数将其解码为Python中的字典类型,并进行相关操作:

import json

json_str = '{"name": "Tom", "age": 18, "hobbies": ["reading", "running", "swimming"], "address": {"city": "Beijing", "street": "Xueyuan Road"}}'

data = json.loads(json_str)

print(data['name']) # Tom

print(data['hobbies']) # ['reading', 'running', 'swimming']

print(data['address']['city']) # Beijing

2.2 dumps()函数

dumps()函数可以将Python对象编码为JSON格式的字符串。例如,我们有一个Python字典对象,其内容如下:

data = {
  "name": "Tom",
  "age": 18,
  "hobbies": ["reading", "running", "swimming"],
  "address": {
    "city": "Beijing",
    "street": "Xueyuan Road"
  }
}

我们可以使用dumps()函数将其编码为JSON字符串,并进行相关操作:

import json

json_str = json.dumps(data)

print(json_str) # {"name": "Tom", "age": 18, "hobbies": ["reading", "running", "swimming"], "address": {"city": "Beijing", "street": "Xueyuan Road"}}

3. 示例

3.1 将Python对象保存为JSON文件

假设我们有如下的Python字典对象:

data = {
  "name": "Tom",
  "age": 18,
  "hobbies": ["reading", "running", "swimming"],
  "address": {
    "city": "Beijing",
    "street": "Xueyuan Road"
  }
}

我们可以使用dumps()函数将其编码为JSON格式的字符串,并将其保存到文件中:

import json

data = {
  "name": "Tom",
  "age": 18,
  "hobbies": ["reading", "running", "swimming"],
  "address": {
    "city": "Beijing",
    "street": "Xueyuan Road"
  }
}

json_str = json.dumps(data)

with open('data.json', 'w') as f:
    f.write(json_str)

这样,我们就将Python对象保存为了JSON格式的文件。

3.2 从JSON文件中读取数据并解码为Python对象

假设我们有如下的JSON格式的数据,保存在一个名为data.json的文件中:

{
  "name": "Tom",
  "age": 18,
  "hobbies": ["reading", "running", "swimming"],
  "address": {
    "city": "Beijing",
    "street": "Xueyuan Road"
  }
}

我们可以使用loads()函数将其解码为Python对象,并进行相关操作:

import json

with open('data.json', 'r') as f:
    json_str = f.read()

data = json.loads(json_str)

print(data['name']) # Tom

print(data['hobbies']) # ['reading', 'running', 'swimming']

print(data['address']['city']) # Beijing

这样,我们就从JSON文件中读取了数据,并将其解码为了Python对象。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python入门教程(二十八)Python中的JSON - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • python 定义n个变量方法 (变量声明自动化)

    Python 中可以通过“一行定义n个变量”的方法快速初始化多个变量,避免了繁琐的定义和赋值过程。 具体操作方法如下: 定义多个变量,使用逗号进行分割。 将逗号分割的变量组成一个序列。 使用序列解包,将序列中的元素分别赋值给前面定义的变量。 示例1: # 定义三个变量x、y、z,同时进行初始化 x, y, z = 1, 2, 3 print(x, y, z)…

    python 2023年5月19日
    00
  • 如何运用python读写CSV文件

    下面就是关于如何运用Python读写CSV文件的详细攻略。 什么是CSV文件 首先我们需要了解的是,CSV(Comma Separated Values)文件是一种纯文本文件格式,在Excel中也可以打开。通常情况下,CSV文件中的每一行代表一个数据记录,每个数据记录中的每个字段(数据项)之间通过逗号分隔。 例如,下面是一个CSV文件的示例: Name, A…

    python 2023年6月3日
    00
  • python异常处理和日志处理方式

    Python 异常处理和日志处理方式 Python 异常处理是指可以预见到的错误或异常,当发生这些异常时,程序会中止运行并输出相应的错误信息给开发者或用户,这样能让开发者了解问题发生的原因并且快速定位问题所在。Python 正确处理异常和错误能够提高程序的稳定性,确保程序运行过程中不会出现无法预见或者无法解决的问题。日志处理也是Python开发中很重要的一项…

    python 2023年5月13日
    00
  • linux环境下的python安装过程图解(含setuptools)

    下面是针对“linux环境下的python安装过程图解(含setuptools)”的完整攻略。 准备工作 在安装Python前,需要确认当前系统上是否已安装Python。可以在Linux终端中输入下面的命令来检查: python –version 如果能输出Python的版本号,说明已经安装有Python了,可以跳过本文前面的安装Python的步骤。 如果…

    python 2023年5月14日
    00
  • PyCharm中Matplotlib绘图不能显示UI效果的问题解决

    下面是“PyCharm中Matplotlib绘图不能显示UI效果的问题解决”的完整攻略: 问题描述 在使用PyCharm进行Matplotlib绘图时,有时会遇到绘图显示不出UI效果的问题。比如,运行以下代码: import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4]) plt.ylabel(‘some nu…

    python 2023年5月18日
    00
  • python文件处理详解

    那么让我们来详细讲解一下“Python文件处理详解”的完整实例教程。 什么是Python文件处理 Python文件处理指的是程序通过操作文件的方式对数据进行管理。Python提供了一些内置函数和模块,使得文件的读、写和操作变得非常容易和有效。 Python文件处理的基本操作 在Python中,文件操作主要分三种:文件读取、文件写入和文件关闭。下面让我们一步步…

    python 2023年5月13日
    00
  • 用Python的pandas框架操作Excel文件中的数据教程

    下面就是详细讲解“用Python的pandas框架操作Excel文件中的数据”教程的完整实例教程。 1. 安装pandas包 首先,我们需要确保我们的电脑已经安装了pandas包。我们可以使用以下命令来安装pandas: pip install pandas 2. 加载Excel文件 我们首先需要将Excel文件加载到pandas数据结构中。我们可以使用pa…

    python 2023年5月13日
    00
  • Python做简单的字符串匹配详解

    以下是详细讲解“Python做简单的字符串匹配详解”的完整攻略。 Python做简单的字符串匹配 在Python中,我们可以使用re模块进行字符串匹配。re模块提供了一系函数,用于处理正则表达式。下面是一个简单的字符串匹配例: import re text = "Hello World" pattern = "Hello&quo…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部