当我们从一个 Python 脚本文件中使用 import
语句导入模块时,我们需要指定模块路径。通常,我们会使用绝对路径或相对路径来指定需要导入的模块。在本文中,我们将重点讨论如何在 Python 代码中使用相对路径导入模块。
什么是相对路径?
相对路径是指相对于当前脚本文件的路径,可以是相对于当前目录的路径,也可以是相对于父目录的路径。在 Python 中,我们可以使用 .
表示当前文件所在的目录,使用 ..
表示父目录,用 ...
表示父目录的上一级目录,以此类推。
如何从相对路径导入模块?
首先,我们需要在 Python 代码中使用 sys.path.append()
来添加我们要导入的模块所在的路径。例如,如果我们要导入一个名为 helper.py
的模块,它位于当前脚本文件所在目录的 utils
子目录下,则我们可以在脚本文件的开头添加如下代码:
import sys
sys.path.append('./utils')
然后,我们就可以使用 import
语句导入模块,如下所示:
import helper
这样,Python 解释器就会在当前目录下的 utils
子目录中搜索名为 helper.py
的模块并将其导入到当前代码中。
示例说明1:从当前目录的子目录导入模块
假设我们有如下的目录结构:
├── main.py
└── utils
├── __init__.py
└── helper.py
其中,main.py
是我们的主程序脚本文件,helper.py
是我们要导入的模块所在的子目录 utils
中的模块文件。为了能够从 main.py
中成功导入 helper.py
,我们需要在 main.py
的开头添加如下代码:
import sys
sys.path.append('./utils')
然后,我们就可以使用 import
语句导入 helper.py
:
import helper
现在,我们就可以在 main.py
中使用 helper.py
中的函数、变量等资源了。
示例说明2:从父目录导入模块
现在,我们来看看如何从父目录导入模块。
假设我们有如下的目录结构:
├── app
│ ├── main.py
│ └── __init__.py
└── utils
├── __init__.py
└── helper.py
其中,main.py
是我们的主程序脚本文件,helper.py
是我们要导入的模块所在的父目录 utils
中的模块文件。
为了能够从 main.py
中成功导入 helper.py
,我们需要在 main.py
的开头添加如下代码:
import sys
sys.path.append('..\\utils')
然后,我们就可以使用 import
语句导入 helper.py
:
import helper
现在,我们就可以在 main.py
中使用 helper.py
中的函数、变量等资源了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python 从相对路径下import的方法 - Python技术站