读取文件名,然后用python调用函数



我想读取文件名(A/B/C/D)和为每个文件调用可调用函数在Files文件夹中,然后处理下一个文件(自动传递到下一个文件和函数)。

我有多个文件存储在File_folder

文件夹:目录结构如下:

App/  
├─ main.py
└─ Files/  
|   └─B.txt
|   └─A.xlsx
|   └─D.xlsx    
|   └─C.csv
└─ File_output/

我有多个函数存储在main.py:

def A_fct(fileA):
pass
def B_fct(fileB):
pass
def C_fct(fileC):
pass
def D_fct(fileD):
pass
def E_fct(fileE):
pass
def F_fct(fileF):
pass

的例子:

读取文件名B.txt=比;调用B_fct

读取文件名A.xlsx=比;调用A_fct

等等……

我该怎么做呢?

我已经读了下面所有的建议,但仍然不知道该怎么做。

如果我对问题的理解正确,您希望根据文件的名称为每个文件调用特定的函数

可以定义一个关系为file_name => function

的字典
name_to_func = {
"A": A_fct,
"B": B_fct,
...
}

则用

调用函数
name_to_func[file_name](file_name)

编辑:

现在我明白你想遍历文件夹中的文件,你可以用os.listdir(path)来做。

例如,像这样:

import os
path = '/your/path/here'
name_to_func = {
"A": A_fct,
"B": B_fct
}
for file_name in os.listdir(path):
file_prefix = file_name.split('.')[0]
name_to_func[file_prefix](file_name)

相关内容

  • 没有找到相关文章

最新更新