问题描述
我正在将一个数组写入文本文件,稍后我用它在 excel 中读取以进行绘图。 数据文件的分割方式是,经过 1000000 步(大约)后,文件关闭并开始写入另一个文件。
但是,我的文本文件将数据写入为一大块没有任何分隔符的值。 请参考下面的代码,让我知道我哪里出错了。
counter = 1
for i in range(0,len(abc_value),1000000):
with open(f"abc{counter}.txt","w") as file:
for val in abc_value[i:i + 1000000]:
file.write(str(val))
file.close()
counter += 1
谢谢!
解决方法
请参阅以下使用 csv writer 的示例。
import csv
with open('abc.txt','w') as csv_file:
wrtr = csv.writer(csv_file)
for val in range(10):
wrtr.writerow(str(val))
,
这个想法是正确的,但是您正在读取数组的值并且它们没有逗号。将值传递给字符串时,您必须添加逗号。 一个简单的方法是:
counter = 1
for i in range(0,len(abc_value),1000000):
with open(f"hola.txt","w") as file:
file.write(str(abc_value[i]))
for val in abc_value[i+1:i + 1000000]:
file.write("," + str(val))
file.close()
counter += 1