【Python存储和调用json文件】


前言

很多程序都要求用户输入某种信息,程序一般将信息存储在列表和字典等数据结构中。

用户关闭程序时,就需要将信息进行保存,一种简单的方式是使用模块json来存储数据。

模块json让你能够将简单的Python数据结构转存到文件中,并在程序再次运行时加载该文件中的数据。

还可以使用json在Python程序之间分享数据,更重要的是,JSON(JavaScript Object Notation,最初由JavaScript开发)格式的数据文件能被很多编程语言兼容。

基本概念

1、json.dumps()和json.loads()是json格式处理函数(可以这么理解,json是字符串)

  • json.dumps()函数是将一个Python数据类型列表进行json格式的编码(可以这么理解,json.dumps()函数是将字典转化为字符串)
  • json.loads()函数是将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典)

2、json.dump()和json.load()主要用来读写json文件函数

1. json.dumps()

import json

# json.dumps()函数的使用,将字典转化为字符串
dict1 = {"age": "12"}
json_info = json.dumps(dict1)
print("dict1的类型:"+str(type(dict1)))
print("通过json.dumps()函数处理:")
print("json_info的类型:"+str(type(json_info)))

运行结果:
请添加图片描述

2. json.loads()

import json

# json.loads函数的使用,将字符串转化为字典
json_info = '{"age": "12"}'
dict1 = json.loads(json_info)
print("json_info的类型:"+str(type(json_info)))
print("通过json.dumps()函数处理:")
print("dict1的类型:"+str(type(dict1)))

请添加图片描述

3. json.dump()

import json

# json.dump()函数的使用,将json信息写进文件
json_info = "{'age': '12'}"
file = open('1.json','w',encoding='utf-8')
json.dump(json_info,file)

运行截图(1.json文件):
请添加图片描述

4. json.load()

import json

# json.load()函数的使用,将读取json信息
file = open('1.json','r',encoding='utf-8')
info = json.load(file)
print(info)
# {'age':'12'}

5. json的综合运用

import json

# list 转成Json格式数据
def listToJson(lst):
    keys = [str(x) for x in np.arange(len(lst))]
    list_json = dict(zip(keys, lst))
    #  # indent,格式化保存字典,默认为None,小于0为零个空格
    str_json = json.dumps(list_json, indent=2, ensure_ascii=False)  # json转为string
    return str_json

rawList = [1, 3, 4, 7]
# 保存JSON
numbers = listToJson(rawList)
filename = "numbers.json" # 默认保存到根目录下,指定存储数据的文件名称
with open(filename, 'w') as file_obj:
  json.dump(numbers, file_obj)

# 加载JSON
filename = "numbers.json"
with open(filename) as file_obj:
  numbers = json.load(file_obj)
print(numbers) # 打印JSON

# 运行结果
"""
{
  "0": 1,
  "1": 3,
  "2": 4,
  "3": 7
}
"""
  1. rawList 通过listToJson函数将list转成Json格式数据;
  2. 用open函数打开numbers.json,调用json.dump( )存储数据;
  3. 只读模式打开文件;
  4. json.load( )加载文件中信息并存储到变量numbers中;
  5. 打印numbers中数字信息;

参考资料

博客园:python中json文件处理涉及的四个函数json.dumps()和json.loads()、json.dump()和json.load()的区分
脚本之家:Python如何存储数据到json文件

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水花

您的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值