Python 导入一个目录中的所有模块

Vaibhhav Khetarpal 2022年5月17日
Python 导入一个目录中的所有模块

需要将模块导入 Python 框架以扩展语言的功能并使用多个库和模块。

一次导入一个模块可能会很麻烦,并且可能会浪费大量时间。本教程讨论如何导入 Python 目录中存在的所有模块。

为了进一步解释这一点,让我们以一个包含需要导入的不同模块的示例目录为例。目录的结构如下所示:

/a
	x.py
	y.py
	z.py

在 Python 中导入一个目录中存在的所有模块

第一步是在给定目录中创建一个新的 python 文件,该文件的名称为 __init__.py

该文件将具有以下内容:

import x
import y
import z

程序员必须使用 list dir 并列出所有 py 文件。可以使用以下代码导入这些文件:

import os
for module in os.listdir(os.path.dirname(__file__)):
    if module == '__init__.py' or module[-3:] != '.py':
        continue
    __import__(module[:-3], locals(), globals())
del module

现在可以通过简单地转到你的代码并编写以下代码来添加模块:

import a

现在可以在此帮助下进一步访问这些模块:

a.x
a.y
a.z

在较新版本的 Python 中,我们可以进行一些调整并利用新的 importlib 模块。然而,这个模块带来了很多麻烦。

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

相关文章 - Python Import

相关文章 - Python Module