写入完成后用写入的文件覆盖读取的文件 python

时间:2021-05-12 11:27:40

标签: python

我从一个文件中读取数据,然后写入另一个文件。

一旦完成,我想用写入文件中的数据更新读取文件

这就是我正在尝试的。 回写需要在循环中,因为需要使用新值更新读取文件。

def execute(read_file, write_file):
    with open(read_file, "r") as in_file:
        reader = csv.reader(in_file)
    with open(write_file, "w") as out_file, open(read_file, 'w') as in_file_a:
        for row in reader:
            writer = csv.writer(out_file)
            wi = csv.writer(in_file_a)
            if not row[0] and not row[1]: 
                row[0] = 'param1'
                row[1] = 'param2'
            a = writer.writerow(row)
            wi.writerows(a) 

我错过了什么?

*更新 * 这是我从评论中了解到的,

global myglobal

def overwrite(read_file):
    overight_file = open(read_file, "w")
    overight = csv.writer(overight_file)
    overight.writerows(myglobal)
    overight_file.close()

def execute(read_file, write_file):

    in_file = open(read_file, "r")
    reader = csv.reader(in_file)

    out_file = open(write_file, "w")
    writer = csv.writer(out_file)

    for row in reader:
        if not row[0] and not row[1]: 
            row[0] = 'param1'
            row[1] = 'param2'
        myglobal = writer.writerow(row)
        overwrite(read_file)

    in_file.close() 
    out_file.close()

0 个答案:

没有答案
相关问题