Python列表和矩阵的保存

Posted 王张飞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python列表和矩阵的保存相关的知识,希望对你有一定的参考价值。

1、需求:

使用Python进行数据处理时,有时候遇到 列表(List) 格式,想要保存为txt方便查看。

2、实现

2.1、list转化为str,然后保存为txt

步骤1:创建python_list2str_txt.py,将下列代码复制到创建的python_list2str_txt.py中:

import os
import sys
import numpy as np
list_a = [[1,2,3], 
          [4,5,6],
          [7,8,9]]
list2str = str(list_a)
file = open("save_list.txt", "w")
file.write(list2str)
file.close()

步骤2:运行python python_list2str_txt.py,得到结果如下:
在这里插入图片描述
这种方式将列表的符号 [ ] 也保存下来了,并且格式存放也不美观。怎么解决?我们在2.2章节中进行介绍。


2.2、list转化为array,然后保存为txt

步骤1:创建python_list2array_txt.py,将下列代码复制到创建的python_list2array_txt.py中:

import os
import sys
import numpy as np
list_a = [[1,2,3], 
          [4,5,6],
          [7,8,9]]
print(list2array.shape)
np.savetxt("data.txt", list2array)

步骤2:运行python_list2array_txt.py,得到结果如下:
在这里插入图片描述
这种方式保存的结果是不是就比2.1章节的效果要好一些呢。

我们上面创建的 列表list_a 转化为 array 之后是一个二维矩阵,使用 np.save 只能保存一维和二维矩阵。遇到三维的矩阵怎么办?我们在2.3章节中进行介绍。


2.3、list转化为array,然后保存为npz

步骤1:创建python_list2array_npz.py,将下列代码复制到创建的python_list2array_npz.py中:

import os
import sys
import numpy as np
list_a = [[[1,2,3], 
           [4,5,6],
           [7,8,9]]] 
list2array = np.array(list_a)
print(list2array.shape)
# 将三维数组保存为二进制的npz文件
np.savez("data.npz", list2array)
# 二进制的npz文件无法直接打开,我们使用np.load读取npz文件
data_npz = np.load("data.npz")
print(data_npz.files)
print(data_npz["arr_0"])

步骤2:运行python_list2array_npz.py,得到结果如下:
在这里插入图片描述

以上是关于Python列表和矩阵的保存的主要内容,如果未能解决你的问题,请参考以下文章

Python列表和矩阵的保存

如何在python中保存列表?

当我从用户获取数据并将其保存到 SQLite 数据库中时,我应该怎么做才能使列表视图在片段中工作

13 个非常有用的 Python 代码片段

我在哪里更改此 Python 代码片段以将临时文件保存在 tmp 文件夹中?

防止android tv行片段/浏览片段保存列表行中卡片的旧位置?