跳转到主要内容

从任何文件系统路径导入Python模块。

项目描述

PyPI

pathimp

从任何文件系统路径导入Python模块。

安装

pip3 install pathimp

使用

import pathimp

pathimp.import_module(
    name='my_module',              # Name of the module directory or file.
    path='../path/to/parent/dir',  # Path or list of paths to search.
    notfound='error')              # Raise 'error' or 'ignore' when not found.

import my_module

背景

当使用import时,Python会尝试在sys.path中查找模块。可以添加额外的搜索目录到sys.path或通过PYTHONPATH环境变量指定。这种解决方案在许多情况下都很好用。然而,将目录添加到sys.path会使所有添加目录中的模块都可用,这可能导致意外导入不想要的包。`pathimp`包允许从文件系统路径导入包而不污染Python导入路径。

详情

调用pathimp.import_module()后,模块将在sys.modules中可用,并且可以通过后续代码正常导入。此函数还返回模块,允许直接使用而无需进一步导入。

import pathimp
my_module = pathimp.import_module('my_module', '../path/to/parent/dir')

如果模块在提供的路径下找不到作为目录或文件,将引发ModuleNotFoundError。可以通过传递`notfound='ignore'`参数禁用异常。

pathimp.import_module('my_module', '../path/to/parent/dir', notfound='ignore')

可以通过查看返回值来确定导入是否成功,返回值是模块实例或如果未找到模块则为`False`。

项目详情


下载文件

下载适用于您的平台文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

pathimp-1.4.0.tar.gz (3.2 kB 查看哈希值)

上传时间:

由以下支持