簡體   English   中英

python,從父目錄導入包

[英]python, import package from parent dir

我的項目樹是這樣的:

maindir\
    dir1\
        MAINSCRIPT.py
    dir2\
        scriptA.py

MAINSCRIPT.py是我的主要腳本!

我怎么可以導入scriptA.pyMAINSCRIPT.py

好吧,這首先不是一個技術性的python軟件包,或者每個文件夾中都有一個__init__.py 而且,我也很困惑為什么要將主程序放在一個文件夾中。 但是我經常用來導入不在Python定期檢查的路徑中的文件的一些事情是

import sys; sys.path.insert(0, '../dir2'); import scriptA

希望有幫助! 有關更多信息: 有關路徑插入的更多信息

以下很好的解決方案來自ImportError:嘗試了相對導入,沒有已知的父包

您可以使用相對導入。 首先,如下更改目錄結構:

maindir\        
    main.py
    lib\
        __init__.py
        dir1\
            __init__.py
            MAINSCRIPT.py
        dir2\
            __init__.py
            scriptA.py

maindir \\ lib \\ dir1 \\ MAINSCRIPT.py

from ..dir2 import scriptA 
...

maindir \\ main.py

import lib.dir1.MAINSCRIPT

現在,我們可以從maindir\\調用腳本:

python main.py

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM