从所有文件夹递归导入所有 .py 文件
Recursively import all .py files from all folders
给定一个根目录,我需要从根目录下的所有文件夹(以及其他文件夹中的文件夹)导入所有文件。
我认为这可以在 os.walk()
的帮助下完成,但不知道如何在 "walking" 之后通过它们导入文件。
有没有简单的方法来做到这一点?
要按名称导入模块(在 3.4 中),请使用 importlib.load_module
,即 "simplifying wrapper around importlib.__import__
"。您会在其他答案中看到后者被提及(作为内置)。当然,要发挥作用,您必须将返回的每个模块分配给 something——除非您导入只是为了检查语法或生成 .pyc 文件,如 compile_all模块。
给定一个根目录,我需要从根目录下的所有文件夹(以及其他文件夹中的文件夹)导入所有文件。
我认为这可以在 os.walk()
的帮助下完成,但不知道如何在 "walking" 之后通过它们导入文件。
有没有简单的方法来做到这一点?
要按名称导入模块(在 3.4 中),请使用 importlib.load_module
,即 "simplifying wrapper around importlib.__import__
"。您会在其他答案中看到后者被提及(作为内置)。当然,要发挥作用,您必须将返回的每个模块分配给 something——除非您导入只是为了检查语法或生成 .pyc 文件,如 compile_all模块。