2025年3月30日 星期日 甲辰(龙)年 月廿九 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Python

python——json文件的读取

时间:01-16来源:作者:点击数:56

Json文件也是一个文本文件,可以使用read() 和 write() ,但不方便,所以使用自己独特的方法

Json文件的语法:

  主要数据类型为对象{}(类似Python中的字典)和数组[] (类似Python中的列表)

  Json文件的最外层要么是一个对象{},要么是一个数组[]

  Json中的对象是由键值对组成,每个数据之间用逗号隔开,最后一个数据后无逗号

  Json中的字符串必须使用双引号

Json文件的书写:

  • {
  • "name": "熊猫",
  • "like": [
  • "听歌",
  • "看书",
  • "运动"
  • ],
  • "address": {
  • "country": "中国",
  • "city": "上海"
  • }
  • }

读取Json文件

1、导包 2、读打开文件 3、读取文件 json.load(文件对象)

# 返回值是字典(文件中是对象)或列表(文件中是数组)

eg1:

  • # 1、导入包
  • import json
  • # 读打开文件
  • with open('Info.json', encoding='utf-8') as a:
  • # 读取文件
  • result = json.load(a)
  • # 获取姓名
  • print(result.get('name')) # 熊猫
  • # 获取城市
  • print(result.get('address').get('city')) # 上海

eg2:提取Json文件中指定数值,组成[{},{}]格式 (自动化参数化需要的数据格式)

Json文件:

  • [
  • {
  • "name": "熊猫",
  • "like": "听歌",
  • "address": "上海"
  • },
  • {
  • "name": "老虎",
  • "like": "运动",
  • "address": "北京"
  • }
  • ]

代码:

  • # 1、导入包
  • import json
  • # 读打开文件
  • with open('Info.json', encoding='utf-8') as a:
  • # 读取文件
  • result = json.load(a)
  • # 定义一个空数组
  • new_list = []
  • # 循环遍历
  • for i in result: # i是个字典
  • # (i.get('name'), i.get('like'), i.get('address'))
  • # 熊猫 听歌 上海
  • # 老虎 运动 北京
  • new_list.append((i.get('name'), i.get('like'), i.get('address'))) # 将获取的值存入数组中
  • print(new_list) # [('熊猫', '听歌', '上海'), ('老虎', '运动', '北京')]

写入Json文件

1、导包 2、写(w)方式打开文件 3、写入 json.dump(文件类型,文件对象)

  • my_list = [('熊猫', '听歌', '上海'), ('老虎', '运动', '北京')]
  • with open('Info2.json', 'w', encoding='utf-8') as b:
  • # ensure_ascii 显示中文,不以ASCII的方式显示
  • json.dump(my_list, b, ensure_ascii=False, indent=2) # indent 缩进

Info2.json:

  • [
  • [
  • "熊猫",
  • "听歌",
  • "上海"
  • ],
  • [
  • "老虎",
  • "运动",
  • "北京"
  • ]
  • ]
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门