迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

从 Python 中的子目录导入模块

作者:迹忆客 最近更新:2023/12/21 浏览次数:

本教程将讲解 Python 中从子目录导入模块的各种方法。假设我们在项目目录的子目录下有一个文件,我们想导入这个文件并在代码中使用它的方法。

我们可以在 Python 中通过将子目录声明为包来导入文件。这样 Python 就会把它当作一个包,我们就可以导入该目录的文件了。另一种选择可以是将子目录添加到 PYTHONPATH 环境变量中,它是 Python 默认寻找要导入的包的路径。下面给出了这些方法的细节和使用方法。


在 Python 中使用 __init__.py 从子目录中导入一个模块

__init__.py 文件用于将一个目录声明为一个包。__init__.py 文件可以防止 Python 将同名的目录混在一起,所以为了区分一个简单的目录和一个包,使用了 __init__.py 文件。

__init__.py 文件可以是空的,也可以有初始化包所需的代码和包所需导入的模块列表,这个列表由 __all__ 变量表示。

一旦 __init__.py 文件被添加到子目录中,我们就可以从子目录中导入该文件,就像下面的示例代码所示。

import subdirectory.myfile

在 Python 中使用 sys.path.insert() 方法从子目录中导入一个模块

从子目录导入文件的另一种方法是将该目录添加到 PYTHONPATH 中。PYTHONPATH 是环境变量,它包含 Python 搜索以导入包的目录的路径。

因此,如果我们使用 sys.path.insert() 方法将子目录添加到 PYTHONPATH 中,Python 将首先查找 PYTHONPATH 中的目录,并从那里导入它。

sys.path.insert() 方法将把子目录插入到 sys.pathPYTHONPATH 变量中,该变量包含了 Python 将搜索导入所需模块的目录列表。

下面的示例代码演示了如何使用 sys.path.insert() 方法从子目录中导入一个文件。

import myfile
import sys

sys.path.insert(0, "./subdirectory")

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便