簡體   English   中英

從同一級別的子目錄導入模塊的更好方法

[英]Better way to import module from subdirectories at the same level

我有以下項目結構main - exp1 - mod1.py - exp2 - mod2.py

我可以使用以下命令從mod1.py中的mod2.py導入模塊abc

from ..exp2.mod2 import abc

還有其他無需使用..導入這些模塊的方法嗎?

您可以始終使用絕對模塊名稱導入

from main.exp2.mod2 import abc  
# or 
# from exp2.mod2 import abc
# (?)

對我來說,這是首選方式。

這樣,您是唯一可用的選項...

除非更改項目結構,否則不確定是否有比使用'..'更簡單的方法:

# mod1.py
    import sys
    sys.path.append('..')
    from exp2.mod2 import abc

您應該始終設置一個PYTHONPATH,然后從該路徑作為main導入。

在您的情況下,您應該執行以下操作:

export PYTHONPATH=main   (Full path of main dir in shell )
from exp2.mod2 import abc

如果這樣做是不正確的方法,那么在傳輸代碼或部署期間您也會遇到一些問題

暫無
暫無

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

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