Python 在多个CSV文件末尾添加具有特定文件名的列和行

Python 在多个CSV文件末尾添加具有特定文件名的列和行,python,csv,Python,Csv,我的设想: 我有一个文件夹Users/kbao/Desktop/dailyfiles/,用于存储自动生成的csv文件。每天一次,将文件添加到此文件夹并将日期作为其名称: 22-01-2020.csv 23-01-2020.csv 24-01-2020.csv 每个文件都有完全相同的列(id、产品名称、订单、数量) id产品名称订单数量 1把吉他1 4 2个鼓4 7 3四弦琴13 29 我的目标是添加一个名为“date”的列作为最后一列,并为文件夹Users/kbao/Desktop/dail

我的设想:

我有一个文件夹
Users/kbao/Desktop/dailyfiles/
,用于存储自动生成的csv文件。每天一次,将文件添加到此文件夹并将日期作为其名称:

22-01-2020.csv
23-01-2020.csv
24-01-2020.csv
每个文件都有完全相同的列(id、产品名称、订单、数量)

id产品名称订单数量
1把吉他1 4
2个鼓4 7
3四弦琴13 29
我的目标是添加一个名为“date”的列作为最后一列,并为文件夹
Users/kbao/Desktop/dailyfiles/
中的每个文件填充每行的值

有可能用一个python脚本做这样的事情吗

期望输出
22-01-2020.csv

id产品名称订单数量日期
1吉他1 4 22-01-2020
2桶4 7 22-01-2020
3四弦琴13 29 22-01-2020
23-01-2020.csv

id产品名称订单数量日期
1案例4 23-01-2020
2键盘6 8 23-01-2020
3钢琴3 5 23-01-2020
24-01-2020.csv

id产品名称订单数量日期
1小提琴12 24-01-2020
2串40 43 24-01-2020
3鼓垫7 13 24-01-2020

以下是一种方法:

from pathlib import Path

# set path
csv_paths = Path('csv_files/')

# create new date column and save again
for file in csv_paths.glob('**/*.csv'):
    f = pd.read_csv(file)
    f = f.assign(date = file.stem)
    f.to_csv(f'{file.name}', index=False)

## read all files again together
df = pd.concat([pd.read_csv(path) for path in csv_paths.glob('**/*.csv')])

有可能用一个python脚本做这样的事情吗?是的。听起来你基本上是想把文件名的一部分添加到文件中的数据中。这需要读取文件并同时为其写入替换文件,然后用新文件替换原始文件。我建议你试着去实现它,如果你不能让它正常工作,你可以问一个问题。标准库中的
csv
模块将使操作相对简单。我向AMC和@martineau道歉。我想补充一点,我只是开始使用python的第一步,几乎不知道如何开始,但这一部分由于意外而从我的帖子中删除了。因此,我正在使用简单的脚本,并尝试一个接一个地启动它们,以便使用一些虚拟数据。下次我会确保在我的问题中添加一些代码,但请确保我花了数小时运行脚本和接收错误。在实践中学习:)猴面包树1988:这就是为什么我在之前的评论中试图给你一些线索。