使用for循环从多个文件夹中读取CSV文件



我的代码将从CSV文件中读取并执行多个操作/计算,然后创建另一个CSV文件,我有8个文件夹要读/写,我希望我的代码通过它们迭代一个通过一个

说我有名为folder1 to folder8的文件夹,首先,我如何指定我的代码以从其他目录中读取,而不是默认的python脚本存在?

这是我的代码的一部分

#read the columns from CSV
MAXCOLS = Number_Of_Buses + 1
Bus_Vol = [[] for _ in range(MAXCOLS)]
with open('p_voltage_table_output.csv', 'rb') as input:
    for row in csv.reader(input, delimiter=','):
        for i in range(MAXCOLS):
            Bus_Vol[i].append(row[i] if i < len(row) else '')
for i in xrange(1,MAXCOLS):
    dummy=0
    #print('Bus_Vol[{}]: {}'.format(i, Bus_Vol[i]))

我希望能够将目录文件夹指定到文件夹,并通过文件夹1迭代到文件夹8,该文件夹都具有相同的CSV文件,带有相同的名称

要读取除脚本所在地以外的目录,您需要为Python提供目录的绝对路径。

Windows样式:C: Path to Directory

*nix样式:/path/to/directory

无论哪种情况,它都是字符串。

您没有指定目标文件夹是否在同一目录中。如果是,那要容易一些。

import os
path_to_parent = "/path/to/parent"
for folder in os.listdir(path_to_parent):
    for csv_file in os.listdir(os.path.join(path_to_parent, folder)):
        # Do whatever to your csv file here

如果您的文件夹分布在系统上,则必须为每个文件夹提供绝对的路径:

import os
paths_to_folders = ['/path/to/folder/one', '/path/to/folder/two']
for folder in paths_to_folders:
   for csv_file in os.listdir(folder):
        # Do whatever to your csv file

相关内容

  • 没有找到相关文章

最新更新