如何在python中写入csv时避免非重复元素?

时间:2018-11-29 04:05:34

标签: python csv

我有下面的功能,可以找出装货的日期和工作表名称,我希望此工作表名称-> load_date得到更新,但会添加新行,所以就像如果不存在则添加新键一样更新同一密钥的值,有什么办法可以解决?

def func_append_load_date(df, 
                          sheet_name, 
                          path, 
                          input_thresh):
    """
    Function to update load date
    """
    thresh = 1 + input_thresh
    next_update_date = df['date'].iloc[df.shape[0] - thresh].date()
    print(path)
    with open(path, 'a+', newline='') as csvfile:
        fieldnames = ['dataset','load_date']
        file_is_empty = os.stat(path).st_size == 0
        writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
        if file_is_empty:
            writer.writeheader()
        writer.writerow({'dataset':sheet_name, 'load_date':next_update_date})

当前csv包含一些行,例如是否为2个不同的工作表名称运行了两次:

original_building,1/12/2017
original_building,1/12/2017
original_building_2,3/12/2018
original_building_2,3/12/2018

预期的csv:

original_building,1/12/2017
original_building_2,3/12/2018

0 个答案:

没有答案