gpt4 book ai didi

python - 从 CSV 文件中提取最后一行并将其放入另一个文件中,并使用 Python 中的文件名

转载 作者:行者123 更新时间:2023-12-01 09:05:04 25 4
gpt4 key购买 nike

我的目录中有一个 CSV 文件列表:

file1.csv
file2.csv
file3.csv

文件的示例内容是:

value1  value2  value3
377298 128203 383929
365173 289201 287392

我需要从每个文件中选取最后一行并将其放入另一个 CSV 中:

files   value1  value2  value3
file1 365173 289201 287392
file2 362829 273829 372910

任何帮助将不胜感激!

最佳答案

使用os模块获取文件名列表,然后将初始标题行写入输出.csv,然后对于目录中的每个文件,写入该文件的最后一行连接到该文件的名称,并使用制表符作为分隔符。

import os
dir_name = 'the_directory'
with open('the_csv.csv', 'w') as out_handler:
out_handler.write('\t'.join(['files', 'value1', 'value2', 'value3'])+'\n')
for file in os.listdir(dir_name):
with open(os.path.join(dir_name, file)) as in_handler:
out_handler.write(file[:file.index('.')] + '\t' + in_handler.readlines()[-1])
<小时/>

完整测试:

$ more the_directory/*
::::::::::::::
the_directory/a.csv
::::::::::::::
value1 value2 value3
377298 128203 383929
365173 289201 287392
::::::::::::::
the_directory/b.csv
::::::::::::::
value1 value2 value3
377298 128203 383929
365987 289123 287456
$ python -q
>>> import os
>>> dir_name = 'the_directory'
>>> with open('the_csv.csv', 'w') as out_handler:
... out_handler.write('\t'.join(['files', 'value1', 'value2', 'value3'])+'\n')
... for file in os.listdir(dir_name):
... with open(os.path.join(dir_name, file)) as in_handler:
... out_handler.write(file + '\t' + in_handler.readlines()[-1])
...
27
29
29
>>>
$ cat the_csv.csv
files value1 value2 value3
b.csv 365987 289123 287456
a.csv 365173 289201 287392

关于python - 从 CSV 文件中提取最后一行并将其放入另一个文件中,并使用 Python 中的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52130073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com