在写入文本文件时添加分隔符

问题描述

我正在将一个数组写入文本文件,稍后我用它在 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