怎么往pkl文件写入dict
时间: 2023-11-23 10:50:58 浏览: 34
往pkl文件写入字典类型的数据可以使用pickle这个库来实现。首先需要导入pickle库,然后使用pickle.dump()函数将字典数据写入pkl文件。具体的代码如下:
```python
import pickle
dict_data = {"name": ["张三", "李四"]}
with open("dict_data.pkl", 'wb') as fo:
pickle.dump(dict_data, fo)
```
以上代码将字典数据`dict_data`写入了名为`dict_data.pkl`的pkl文件中。
相关问题
怎么保存字典为pkl文件
您可以使用Python中的pickle库将字典保存为pkl文件,示例代码如下:
```python
import pickle
# 定义一个字典
my_dict = {'apple': 1, 'banana': 2, 'orange': 3}
# 将字典保存为pkl文件
with open('my_dict.pkl', 'wb') as f:
pickle.dump(my_dict, f)
```
这段代码会将字典`my_dict`保存为名为`my_dict.pkl`的pkl文件。您可以使用`with open`语句打开文件并使用`pickle.dump`方法将字典保存到文件中。在`open`语句中,`wb`表示以二进制写入模式打开文件,`pickle.dump`将字典写入文件。
json文件转换为pkl
将json文件转换为pkl文件可以通过Python内置的pickle模块实现。首先需要将json文件读取出来,然后将其转化为Python中的dict或者list等数据类型,最后使用pickle.dump()函数将数据写入pkl文件中。读取pkl文件时,使用pickle.load()函数即可将数据读取出来。相比于json文件,pkl文件的读取速度更快,但是由于其协议特定于Python,因此不保证跨语言兼容性。下面是一个将多个json文件转换为pkl文件的示例代码:
```
import pickle
import json
root = '/home/raywit/PycharmProjects/'
with open(root + 'training_xyz.json', 'r') as f:
a = np.array(json.load(f))
with open(root + 'k.json', 'r') as f:
fx = np.array(json.load(f))
with open(root + 'k1.json', 'r') as f:
fy = np.array(json.load(f))
with open(root + 'training_verts.json', 'r') as f:
gt = np.array(json.load(f))
list_data = {'training_xyz': a, 'k': fx, 'k1': fy, 'training_verts': gt}
with open("list_data.pkl", "wb") as fo:
pickle.dump(list_data, fo)
fo.close()
with open("list_data.pkl", "rb") as fo:
A = pickle.load(fo, encoding='bytes')
print(A['k'].shape)
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)