Debian
$PYTHONPATH 和 sys.path 似乎不匹配
我想永久添加一個文件夾,
sys.path
但它不起作用。在我的 Debian Stretch 上,當我執行時:
$ echo $PYTHONPATH
它看起來很空
同時,當我列印 的內容時
sys.path
,有 10 條不同的路徑與其中包含的路徑不同$PATH
(顯然在 中$PYTHONPATH
)。怎麼解釋?(我必須為一個框架創建一個 virtualenv,但我不認為我現在正在使用它,所以它可能不相關,但我對這個概念並不滿意,所以也許我錯過了一些東西)
此外,我嘗試修改
.bashrc
以添加路徑,$PYTHONPATH
因此我知道以下行:PYTHONPATH=$PYTHONPATH:~/bin
重新啟動後,它可以工作,我的意思是 $PYTHONPATH 包含它,但
sys.path
.此外,
$ env | grep ^PYTHON
什麼也不返回。那麼,如何
sys.path
填充以及如何向其中永久添加文件夾?
sys.path
在 Python 中是“指定模組搜尋路徑的字元串列表。從環境變數初始化PYTHONPATH
,加上依賴於安裝的預設值。” (取自Python 線上文件)。要
sys.path
受 影響PYTHONPATH
,後者必須是環境變數。如果它不是環境變數而只是 shell 變數,則解釋器將看不到它python
。您可以通過在設置其值後或同時將其導出來將其轉換為環境變數,如export PYTHONPATH=/some/path:/goes/here