我在项目中有几个python模块,我将它们放在不同的文件夹中,例如,
pythonProject\folderA\modulex.py
pythonProject\folderB\moduley.py
pythonProject\commonModule\module1.py
我在每个文件夹中都有__init__.py
。
在这种情况下,如何将module1导入modulex?
答案 0 :(得分:2)
使用相对导入
# in modulex
from ..commonModule import module1
答案 1 :(得分:1)
每当你有python包(那些包含__init__.py
个文件的文件夹)时,你可以导入如下的模块
modulex.py
----------
from pythonproject.commonModule import module1
试试这个,如果工具没有定义pythonproject
,那么你可以使用下面的相对寻址
from ..commonModule import module1
答案 2 :(得分:0)
如果所有模块都在同一目录中,则效果最佳。如果他们中的任何一个在不同的可能使用os.chdir(路径)。使用os.chdir(path)方法(https://docs.python.org/3.2/library/os.html)可能会更改程序中的工作目录。
import os
import modulex
#assume working directory is "pythonProject\folderA\"
os.chdir(r'pythonProject\commonModule\')
#now working directory is "pythonProject\commonModule\"
import module1