Python 尝试在文本文件中写入和读取两个矩阵

Python 尝试在文本文件中写入和读取两个矩阵,python,file-io,matrix,Python,File Io,Matrix,在一个Python脚本中,我需要在一个文本文件中写入两个浮点矩阵,在第二个Python脚本中,我想再次读取该文本文件。所以我试着这样做: #ElR is the first matrix and ShR is the second matrix with open("house.txt", "w") as fE: fE.writelines(','.join(str(j) for j in i) + '\n' for i in ElR) with open("house.txt", "

在一个Python脚本中,我需要在一个文本文件中写入两个浮点矩阵,在第二个Python脚本中,我想再次读取该文本文件。所以我试着这样做:

#ElR is the first matrix and ShR is the second matrix
with open("house.txt", "w") as fE:
    fE.writelines(','.join(str(j) for j in i) + '\n' for i in ElR)

with open("house.txt", "w") as fS:
    fS.writelines(','.join(str(j) for j in i) + '\n' for i in ShR)
但是,执行此操作时,只在文本文件中写入ShR的值,而不写入ElR的值。有什么问题吗? 此外,这是读取文本文件并将两个矩阵保存在其他矩阵中的任何方法吗?所需的脚本如下所示(我猜):


您需要使用模式打开文件

您可以通过连接列表来缩短该时间

with open("house.txt", "w") as fE:
    fE.writelines(','.join(str(j) for j in i) + "\n" for i in ElR + ShR)

如果矩阵不需要是人类可读的,我将使用序列化它们,并避免重新创建它们。比如:

>>> import pickle
>>> with open("my_matrices.pkl", "wb") as f:
...    pickle.dump(my_matrix_object, f)
...
当你需要的时候

>>> with open("my_matrices.pkl", "rb") as f:
...    matrix = pickle.load(f)
...

您需要使用模式打开文件

您可以通过连接列表来缩短该时间

with open("house.txt", "w") as fE:
    fE.writelines(','.join(str(j) for j in i) + "\n" for i in ElR + ShR)

如果矩阵不需要是人类可读的,我将使用序列化它们,并避免重新创建它们。比如:

>>> import pickle
>>> with open("my_matrices.pkl", "wb") as f:
...    pickle.dump(my_matrix_object, f)
...
当你需要的时候

>>> with open("my_matrices.pkl", "rb") as f:
...    matrix = pickle.load(f)
...

您需要使用模式打开文件

您可以通过连接列表来缩短该时间

with open("house.txt", "w") as fE:
    fE.writelines(','.join(str(j) for j in i) + "\n" for i in ElR + ShR)

如果矩阵不需要是人类可读的,我将使用序列化它们,并避免重新创建它们。比如:

>>> import pickle
>>> with open("my_matrices.pkl", "wb") as f:
...    pickle.dump(my_matrix_object, f)
...
当你需要的时候

>>> with open("my_matrices.pkl", "rb") as f:
...    matrix = pickle.load(f)
...

您需要使用模式打开文件

您可以通过连接列表来缩短该时间

with open("house.txt", "w") as fE:
    fE.writelines(','.join(str(j) for j in i) + "\n" for i in ElR + ShR)

如果矩阵不需要是人类可读的,我将使用序列化它们,并避免重新创建它们。比如:

>>> import pickle
>>> with open("my_matrices.pkl", "wb") as f:
...    pickle.dump(my_matrix_object, f)
...
当你需要的时候

>>> with open("my_matrices.pkl", "rb") as f:
...    matrix = pickle.load(f)
...

@m、 wasowski啊,是的,我要补充一点。使用
pickle
的解决方案更适合我的目的。所以我已经做到了,而且效果很好。谢谢大家@m、 wasowski啊,是的,我要补充一点。使用
pickle
的解决方案更适合我的目的。所以我已经做到了,而且效果很好。谢谢大家@m、 wasowski啊,是的,我要补充一点。使用
pickle
的解决方案更适合我的目的。所以我已经做到了,而且效果很好。谢谢大家@m、 wasowski啊,是的,我要补充一点。使用
pickle
的解决方案更适合我的目的。所以我已经做到了,而且效果很好。谢谢大家!