[英]Python & docker: how can i add packages into sys.path?
我已經嘗試解決了好幾次,但是在任何地方都找不到。
讓我弄清楚。
我在C:/Users
創建game
,它是一個包,由like
game/__init__.py
game/sound/__init__.py
game/sound/echo.py
然后我在Test_Module.py
的其他位置執行Test_Module.py
我嘗試
>>> sys.path.append("C:/Users/game")
和
>>> sys.path.insert(0, "C:/Users/game")
當我導入游戲時,Pycharm中有紅色下划線
泊塢窗中未出現名為“游戲”的模塊。
我也做了Interpreter項目來選擇路徑。 但這只會使紅色下划線消失而仍然無法正常工作
沒有名為“游戲”的模塊
好吧,如果我將game
文件移動到執行Test_Module.py
的文件夾中,那么它完全可以在沒有sys.path.append
情況下工作,而只需import game
。
我在Linux上,所以我嘗試像這樣復制您的包結構。
mkdir -p game/sound
touch game/__init__.py
touch game/sound/__init__.py
touch game/sound/echo.py
現在我的目錄看起來像這樣
$ tree
.
└── game
├── __init__.py
└── sound
├── echo.py
└── __init__.py
echo.py
包含此
def hello():
print("hello")
如果我啟動python解釋器,我可以調用該函數
$ python
Python 3.6.4 (default, Jul 17 2018, 18:32:53)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from game.sound import echo
>>> dir(echo)
['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'hello']
>>> echo.hello()
它正確返回
hello
我在pycharm中打開了它,看起來好像正確找到了所有東西。 如果您按照我在一個單獨的目錄中所做的操作並在pycharm中打開,這對您有用嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.