Python-高效的读写大型数据

在进行业务代码编写过程中,不免会用到一些大型的数据信息,一些解决方案是使用数据库(Mysql、Nosql),但是有些业务中,可能并没办法提供一个相对稳定的数据库服务。因此使用格式化的文本进行数据存储成为一个解决方案。
所以在这里记录一下一些相关的第三方库,用于以后的备选

使用numpy,保存为.npy文件

1
2
3
4
5
6
7
8
9
import numpy as np

# Save
dict = {'a':1,'b':2,'c':3}
np.save('my_file.npy', dict) # 注意带上后缀名

# Load
load_dict = np.load('my_file.npy').item()
print(load_dict['a'])

2.使用pickle,保存为.pkl文件

1
2
3
4
5
6
7
8
9
10
11
# 字典保存
dict = {'a':1,'b':2,'c':3}
f_save = open('dict_file.pkl', 'wb')
pickle.dump(dict, f_save)
f_save.close()

# # 读取
f_read = open('dict_file.pkl', 'rb')
dict2 = pickle.load(f_read)
print(dict2)
f_read.close()

使用JSON(可在pycharm中直接查看)

在python中,JSON模块提供以下四个功能,
dumps、dump、loads、load。其中dumps把数据类型转换成字符串 dump把数据类型转换成字符串并存储在文件中 loads把字符串转换成数据类型 load把文件打开从字符串转换成数据类型
1.字典转化为JSON并写入

1
2
3
4
5
6
7
8
9
import json
# 创建字典
info_dict = {'name': 'Joe', 'age': 20, 'job': 'driver'}
# dumps 将数据转换成字符串
info_json = json.dumps(info_dict,sort_keys=False, indent=4, separators=(',', ': '))
# 显示数据类型
print(type(info_json))
f = open('info.json', 'w')
f.write(info_json)

  1. 读取JSON文件,并转化为字典
    1
    2
    3
    4
    5
    6
    # JSON到字典转化
    f2 = open('info.json', 'r')
    info_data = json.load(f2)
    print(info_data)
    # 显示数据类型
    print(type(info_data))
-------------本文结束感谢您的阅读-------------