$PYTHONPATH 和 sys.path 似乎不匹配

$PYTHONPATH 和 sys.path 似乎不匹配

我想永久添加一個資料夾,sys.path但它不起作用。

在我的 Debian Stretch 上,當我執行:

$ echo $PYTHONPATH

它看起來是空的

同時,當我列印 的內容時,有 10 個不同的路徑與包含在(顯然在)中sys.path的路徑不同。怎麼解釋呢?$PATH$PYTHONPATH

(我必須為框架創建一個 virtualenv,但我認為我現在沒有使用它,所以它可能不相關,但我對這個概念不滿意,所以也許我錯過了一些東西)

我還嘗試修改.bashrc以添加路徑,$PYTHONPATH以便我知道以下行:

PYTHONPATH=$PYTHONPATH:~/bin 

重新啟動後,它可以工作,我的意思是 $PYTHONPATH 包含它,但sys.path.

另外,$ env | grep ^PYTHON什麼也不返回。

那麼,如何sys.path填充以及如何向其中永久添加資料夾?

答案1

sys.path在Python中是一個“指定模組搜尋路徑的字串列表。從環境變數初始化PYTHONPATH,加上依賴安裝的預設值。” (取自Python 線上文檔)。

為了sys.path受 影響PYTHONPATH,後者必須是一個環境變數。如果它不是環境變量而只是 shell 變量,則python解釋器將看不到它。您可以在設定其值後或同時匯出它,將其轉換為環境變量,如下所示

export PYTHONPATH=/some/path:/goes/here

相關內容