我的源代码目录(名为my_dir
)的组织如下:
my_dir
|
|-- pkg_1
| |
| |-- module_1.py
| |-- module_2.py
|
|-- src.py
在module_1.py
中,我通过
module_2.py
import module_2
但是当我通过{p>在module_1
中导入src.py
时
import module_1
由于import module_2
中的语句module_1.py
就像我的工作目录是pkg_1
而不是my_dir
,因此引发错误。
如何解决此问题?
答案 0 :(得分:0)
在module_1.py
中将其导入为from . import module_2
,在src.py
中将module_1导入为from pkg_1 import module_1
答案 1 :(得分:0)
这是造成误解的原因:
由于
import module_2
中的语句module_1.py
就像我的工作目录是pkg_1
而不是my_dir
,因此引发错误。
首先,导入软件包时,该软件包中的代码不会在其他工作目录中执行。
第二个错误是即使更改了工作目录也根本不相关。
Python代码被组织为包和模块。解释器在python路径中搜索包和模块。
在所示的结构中,如果您运行my_dir
,则python src.py
将位于python路径中。那么pkg_1
是一个包,而module_1
和module_2
是一个模块。导入module_2
的最简单方法是使用绝对导入:
import pkg_1.module_2
或者,您可以在pkg_1
的另一个模块中使用relative import:
from . import module_2
答案 2 :(得分:-1)
尝试一下:
mounted () {
this.init()
},