我可以找到 python 版本python --version
但我找不到 python 可執行檔案的位置。有沒有類似的命令python --path?如果沒有,有什么原因嗎?
uj5u.com熱心網友回復:
使用sys.executable:
python -c 'import sys; print(sys.executable)'
uj5u.com熱心網友回復:
在終端中使用“where python”來獲取它的路徑
編輯
where python適用于 windows 和which python適用于 linux
uj5u.com熱心網友回復:
使用which python或which python3。在基于 Unix 的作業系統上作業。
對于 Windows,請參閱其他答案。
uj5u.com熱心網友回復:
(注意:whichandls -l命令在 Windows 上不起作用,但在檔案系統上安裝 Python 位置的一般跟蹤仍應在 中可用sys.base_prefix)
為了詳細說明 Wim 的答案(在看到他們的答案之前,我在 sys 命名空間中四處尋找),您可能會對不同的“python”感興趣:which python位置。(或者在 Windows 術語中,它首先python在 %PATH% 位置看到什么?)
您也可能有興趣知道:檔案系統上實際安裝了 python 的位置?
sys.base_prefix幫助后者。
python -c 'import sys; print(f"{sys.executable=}\n{sys.base_prefix=}" )'
在沒有激活 virtualenv 的情況下,我使用基于 macport 的 python 在 macOS 上得到了這個:
sys.executable='/opt/local/bin/python'
sys.base_prefix='/opt/local/Library/Frameworks/Python.framework/Versions/3.10'
實際上,如果您深入研究該 bin 目錄中的內容,您會發現:
% ls -l /opt/local/bin/python
lrwxr-xr-x 1 root wheel 25 7 Jan 2022 /opt/local/bin/python -> /opt/local/bin/python3.10
和
% ls -l /opt/local/bin/python3.10
lrwxr-xr-x 1 root admin 75 7 Jun 02:02 /opt/local/bin/python3.10 -> /opt/local/Library/Frameworks/Python.framework/Versions/3.10/bin/python3.10
所以實際安裝的二進制檔案位于base_prefix.
如果我激活我的虛擬環境,base_prefix保持不變,但sys.executable反映了我現在在 virtualenv 中的事實
sys.executable='/Users/me/kds2/venvs/bme/bin/python'
sys.base_prefix='/opt/local/Library/Frameworks/Python.framework/Versions/3.10'
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/518628.html
標籤:Python视窗
