执行 writerow() 方法时删除的 CSV 存储数据

csv stored data deleted when writerow() method executed

提问人:amir darvish 提问时间:3/1/2021 最后编辑:martineauamir darvish 更新时间:3/1/2021 访问量:75

问:

我想从CSV文件中读取数据,并立即将它们存储在另一个CSV文件中

问题是每当我运行此函数时,它都会从输入文件中删除所有存储的数据(没有例外)。

def calculate_averages(input_file_name, output_file_name):
    with open(input_file_name, mode="r") as file:
        reader = csv.reader(file)
        for row in reader:
            grades = list(map(int, row[1:]))
            with open(input_file_name, mode="w") as wfile:
                writer = csv.writer(wfile)
                writer.writerow([row[0], mean(grades)])
python-3.x csv 文件 io

评论

0赞 martineau 3/1/2021
您正在覆盖您正在阅读的同一文件。

答:

0赞 HuDahai 3/1/2021 #1

您不使用 来存储输出数据。相反,您使用 to 读取数据,然后写入 。output_file_nameinput_file_nameinput_file_name