在每个文件夹中执行一次脚本

Executing the script one time in each folder

我需要制作一个脚本,在一个目录的每个文件夹中执行一次脚本。

有问题的脚本:

f = open('OrderEXAMPLE.txt', 'r')
data = f.readlines()
mystr = ",".join([line.strip() for line in data])
with open('CSV.csv', 'w') as f2:
f2.write(mystr)

使用此脚本,它将客户数据列表更改为 csv 格式。

每个订单都有自己的文件夹,所以我最初的想法是将相同的脚本放入每个文件夹中。从那里,编写另一个同时执行每个脚本的脚本。

文件夹结构如下:

Order_forms

--Order_123

-----Order_form

--Order_124

-----Order_form

业余 python,因此需要并感谢您的建议。

只需用一个脚本遍历目录结构。这将为名称为 <original_filename>_CSV.csv 的每个文件编写一个单独的 CSV。如果无法更清楚地了解所需的输出,也不知道数据是什么样子,我无能为力。您应该可以根据需要进行调整。

import os

parent_folder = 'Order_forms'
for root, dirs, files in os.walk(parent_folder):
    for f in files:
        with open(os.path.join(root, f), 'r') as f1:
            data = f1.readlines()
            mystr = ",".join([line.strip() for line in data])
            with open(os.path.join(root, '{}_CSV.csv'.format(f)), 'w') as f2:
                f2.write(mystr)