python中模块引用导致python模块不能直接执行问题的解决

如下Python项目:

package/
    __init__.py
    subpackage1/
        __init__.py
        moduleX.py
        moduleY.py
    subpackage2/
        __init__.py
        moduleZ.py
    moduleA.py

假设moduleZ.py中包含如下代码:

from subpackage1.moduleX import func1

但是我还想通过解释权直接执行moduleZ.py,这个时候可以通过使用如下方法:

cd package/

python -m subpackage2.moduleZ


python -m解释如下:

-m module-name                         Searches sys.path for the named module and runs the corresponding .py file as a script.

也就是使用-m之后,python将从sys.path里面查找要执行的python模块






你可能感兴趣的:(python中模块引用导致python模块不能直接执行问题的解决)