python - 如何将字典写入文本文件,其中包含 Python 中字典中每个元素的列
问题描述
我正在尝试使用以前从 matlab 生成的工作区来创建一个输入文本文件,以供另一个程序读取。我可以将工作区作为字典导入 Python,没有任何问题。由于字典中不同的数据类型和不同大小的数组,从这里我很难写入文本文件。我希望字典中的每个字段在文本文件中都有自己的列,但运气不佳。这是从 matlab 导入的字典的屏幕截图。
我能够使用以下代码将其中一个变量放入文本文件中,但是我无法添加更多变量或具有不同数据类型的变量。
import csv
import scipy.io
import numpy as np
#import json
#import _pickle as pickle
#import pandas as pd
mat = scipy.io.loadmat('Day055.mat')
#print(type(mat))
#print(mat['CC1'])
CC1 = mat['CC1']
CC2 = mat['CC2']
DP1 = mat['DP1']
#print(CC1)
#print(CC2)
dat = np.array([CC1, DP1])
dat =dat.T
#np.savetxt('tester.txt', dat, delimiter = '\t')
np.savetxt('tester.txt', CC1, delimiter = '\t')
'''
with open('test.csv', 'w') as f:
writer = csv.writer(f)
for row in CC1:
writer.writerow(row)
#print(type(CC1))
#print("CC1=", CC1)
#print("first entry to CC1:", CC1[0])
mat = {'mat':mat}
df = pd.DataFrame.from_dict(mat)
print(df)
print(type(mat))
x=0
with open('inputDay055.txt', 'w') as file:
for line in CC1:
file.write(CC1[x])
#file.write("\t".join(map(str, CC2))+"\n")
#file.write(pickle.dumps(mat))
x=x+1
'''
print("all done")
如您所见,我也尝试了几种不同的方法,但是当我不成功时将它们注释掉。
解决方案
推荐阅读
- python - 如何定义 set 类型的新变量并将单词的文本列表存储在其中?
- networking - 什么是谷歌云休息 API 中的网络 URI
- webpack - Webpack mini-css-extract-plugin @font-face url 解析问题
- asp.net-core - NetCore API 模拟
- flutter - 无法在 GoogleSignIn 中捕获 Flutter 异常
- r - 如何使用 R 中的 gtsummary 包为表中的标签添加下标?
- unit-testing - 在 Azure DevOps 上,我找不到解释如何将单元测试项目作为 .NET Core 构建管道的一部分自动运行的示例
- python - pyshp 在 shapefile 中生成随机点
- clojure - 重定向后?不在解放者中工作或预检响应不成功
- php - 有条件的 Laravel 资源