python实现json文件的增删改操作方法

 更新时间:2023年06月06日 11:35:52   作者:时间之里  
这篇文章主要介绍了python实现json文件的增删改操作,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

python实现json文件的增删改

1.原始JSON文件

以下是一个例子,假设原始的JSON文件内容如下:

{
  "name": "Alice",
  "age": 30,
  "address": {
    "city": "Beijing",
    "street": "Main Street"
  },
  "hobbies": ["reading", "swimming", "traveling"]
}

2.修改操作

修改操作:

import json
# 加载JSON文件
with open('example.json', 'r') as f:
    data = json.load(f)
# 修改姓名
data['name'] = 'Bob'
# 修改年龄
data['age'] = 35
# 修改住址
data['address']['city'] = 'Shanghai'
data['address']['street'] = 'West Street'
# 保存修改后的JSON文件
with open('example.json', 'w') as f:
    json.dump(data, f, indent=2)    # 保持2个缩进

3.删除操作

删除操作:

import json
# 加载JSON文件
with open('example.json', 'r') as f:
    data = json.load(f)
# 删除爱好中的一个
data['hobbies'].remove('reading')
# 删除整个address
del data['address']
# 保存修改后的JSON文件
with open('example.json', 'w') as f:
    json.dump(data, f, indent=2)

4.新增操作

新增操作:

import json
# 加载JSON文件
with open('example.json', 'r') as f:
    data = json.load(f)
# 新增一个爱好
data['hobbies'].append('writing')
# 新增一个电话号码
data['phone'] = '13888888888'
# 保存修改后的JSON文件
with open('example.json', 'w') as f:
    json.dump(data, f, indent=2)

5.三级目录的一些数据修改

假设我们有一个JSON文件data.json,包含三级目录的一些数据:

{
  "users": [
    {
      "name": "John",
      "age": 28,
      "pets": [
        {
          "name": "Fluffy",
          "type": "cat"
        },
        {
          "name": "Fido",
          "type": "dog"
        }
      ]
    },
    {
      "name": "Mary",
      "age": 33,
      "pets": [
        {
          "name": "Rex",
          "type": "dog"
        },
        {
          "name": "Whiskers",
          "type": "cat"
        },
        {
          "name": "Buddy",
          "type": "dog"
        }
      ]
    }
  ]
}

现在,我们想修改第二个用户的第一个宠物的名称为"Smokey"。可以使用以下代码:

import json
# 读取JSON文件
with open('data.json', 'r') as f:
    data = json.load(f)
# 获取第二个用户的第一个宠物
pet = data['users'][1]['pets'][0]
# 修改宠物名称
pet['name'] = 'Smokey'
# 保存修改后的JSON文件
with open('data.json', 'w') as f:
    json.dump(data, f, indent=2)

运行以上代码后,data.json文件的内容将会变成:

{
  "users": [
    {
      "name": "John",
      "age": 28,
      "pets": [
        {
          "name": "Fluffy",
          "type": "cat"
        },
        {
          "name": "Fido",
          "type": "dog"
        }
      ]
    },
    {
      "name": "Mary",
      "age": 33,
      "pets": [
        {
          "name": "Smokey",
          "type": "dog"
        },
        {
          "name": "Whiskers",
          "type": "cat"
        },
        {
          "name": "Buddy",
          "type": "dog"
        }
      ]
    }
  ]
}

在这个示例代码中,我们首先使用json.load()函数读取data.json文件。接着,我们使用data['users'][1]['pets'][0]获取第二个用户的第一个宠物。然后,我们可以修改宠物的名称,通过修改字典pet的键值来实现。最后,我们使用json.dump()函数将修改后的数据保存到原始的JSON文件中。

【err】 1.open()读取文件提示:“UnicodeDecodeError”

“UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0x80 in position 205: illegal multibyte sequence”

解决办法1.

FILE_OBJECT= open(‘order.log’,‘r’, encoding=‘UTF-8’)
解决办法2.

FILE_OBJECT= open(‘order.log’,‘rb’)

Python open()函数详解:打开指定文件

到此这篇关于python实现json文件的增删改操作的文章就介绍到这了,更多相关python json文件的增删改内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python实现人脸签到系统

    python实现人脸签到系统

    这篇文章主要为大家详细介绍了python实现人脸签到系统,带数据库存储,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • Python处理PDF及生成多层PDF实例代码

    Python处理PDF及生成多层PDF实例代码

    Python提供了众多的PDF支持库,本篇文章主要介绍了Python处理PDF及生成多层PDF实例代码,这样就能够实现图片扫描上来的内容也可以进行内容搜索的目标
    2017-04-04
  • python实现逢七拍腿小游戏的思路详解

    python实现逢七拍腿小游戏的思路详解

    这篇文章主要介绍了python实现逢七拍腿小游戏的思路,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • Python实现多线程/多进程的TCP服务器

    Python实现多线程/多进程的TCP服务器

    这篇文章主要为大家详细介绍了Python实现多线程/多进程的TCP服务器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • python网络爬虫之如何伪装逃过反爬虫程序的方法

    python网络爬虫之如何伪装逃过反爬虫程序的方法

    本篇文章主要介绍了python网络爬虫之如何伪装逃过反爬虫程序的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • Python cookbook(数据结构与算法)实现查找两个字典相同点的方法

    Python cookbook(数据结构与算法)实现查找两个字典相同点的方法

    这篇文章主要介绍了Python实现查找两个字典相同点的方法,涉及Python常见集合运算操作技巧,需要的朋友可以参考下
    2018-02-02
  • python删除某个字符

    python删除某个字符

    这篇文章主要介绍了python删除某个字符,现在发布的是一个比较简单易行的方法,就是遇到该字符便跳过去,不对其进行操作,完美呈现出删除该字符的功能,需要的朋友可以参考下
    2018-03-03
  • selenium+python实现登陆QQ邮箱并发送邮件功能

    selenium+python实现登陆QQ邮箱并发送邮件功能

    这篇文章主要介绍了selenium+python实现登陆QQ邮箱并发送邮件功能,本文给大家分享完整实例代码,需要的朋友可以参考下
    2019-12-12
  • idea如何配置python环境

    idea如何配置python环境

    在IDEA中配置Python环境的步骤包括:安装Python解释器、安装Python插件、创建Python项目、配置Python解释器
    2024-11-11
  • PyTorch中dataloader制作自定义数据集的实现示例

    PyTorch中dataloader制作自定义数据集的实现示例

    本文主要介绍了PyTorch中dataloader制作自定义数据集的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-05-05

最新评论