我有两个几乎包含 100 个浮点数值的列表,我需要将它们的数据保存到一个包含两列的 txt 文件中。但是,我需要这个文件来重新打开它并添加额外的数据并保存它,在我的代码中至少 3 次......请如果有人有任何想法......
问问题
7055 次
2 回答
1
你可以试试这个想法:
首先,将两个列表写入一个两列文本文件。
a=[0.2342,2.0002,0.1901]
b=[0.4245,0.5123,6.1002]
c = [a, b]
with open("list1.txt", "w") as file:
for x in zip(*c):
file.write("{0}\t{1}\n".format(*x))
二、重新打开保存的文件list1.txt
with open("list1.txt", "r+") as file:
d = file.readlines()
三、添加额外数据
e=[1.2300,0.0002,2.0011]
f=[0.4000,1.1004,0.9802]
g = [e, f]
h = []
for i in d:
h.append(i)
for x in zip(*g):
h.append("{0}\t{1}\n".format(*x))
四、保存文本文件
with open("list2.txt", "w") as file1:
for x in h:
file1.writelines(x)
文件中的输出list2.txt
如下所示
0.2342 0.4245
2.0002 0.5123
0.1901 6.1002
1.23 0.4
0.0002 1.1004
2.0011 0.9802
于 2019-05-11T10:21:10.353 回答
0
这取决于您要如何分隔两列(使用空格、制表符或逗号)。以下是我如何以空格作为分隔符的快速“n”脏方式:
蟒蛇2:
with open('output.txt', 'w') as f:
for f1, f2 in zip(A, B):
print >> f, f1, f2
蟒蛇 3:
with open('output.txt', 'w') as f:
for f1, f2 in zip(A, B):
print(f1, f2, file=f)
于 2012-09-23T08:14:23.453 回答