我想運行碼頭容器child1和child2。 可以說,我們有:如何將模塊中的目錄導入到Python路徑中,該路徑是從子文件夾到原始源的符號鏈接?
修訂
|parent
|-----|child1/
src_folder/
__init__.py
mod1.py
|-----|child2/
__init__.py
symlink_target_folder
mody.py
test1_dir/
smfile.py
我做了什麼樣
ln -rs ~/parent/child1/src_folder ~/parent/child2/symlink_target_folder
在mody.py當我這樣做,
from symlink_target_folder import mod1
有用;
但test1_dir> smfile.py當我做
from .child2.symlink_target_folder import mod1
它拋出回導入錯誤。
我想知道如何從該目錄訪問相同的模塊? 可以將symlink_target_folder導出到PYTHONPATH中。 我已經做了
出口PYTHONPATH = $ PYTHONPATH:/ symlink_target_folder
這樣` 我可以從mody.py
from symlink_target_folder.mod1 import SmFoo
做,但我不認爲它是由於PYTHONPATH。只是symlink_target_folder和mody.py在同一個文件夾中。
我該如何解決這個問題? 什麼是解決這個問題的更好方法? 我做check this out
要確定你在問什麼:問題是,當你試圖在'test1_dir'目錄執行'smfile.py'命令時,腳本會拋出'ImportError',命令是'python smfile.py 「對嗎? – FunkySayu 2015-04-06 13:40:06
像'cd child2/test1_dir/&& python smfile.py'對嗎? – FunkySayu 2015-04-06 13:40:43
@FunkySayu是的。 – user2290820 2015-04-06 16:47:23