[Python] 引用路徑與多版本共存教學

更新 發佈閱讀 5 分鐘

許多開發者在 Windows 上安裝了多個 Python 版本(例如 3.8、3.11、WinPython 3.12 等),

卻常常遇到「到底現在執行的是哪個 Python?」的困惑。

甚至有時候明明沒有把某個版本加入環境變數(PATH),

但在該資料夾中執行 python 時,卻發現系統竟然使用了那個版本。

這篇文章將完整說明 Windows 如何尋找 Python 的執行檔

並教你如何控制與切換版本,避免套件或環境衝突。


🧩 一、Windows 的執行檔搜尋順序(PATH Lookup Order)

當你在命令提示字元(CMD)輸入:

python

Windows 並不是「神奇地知道」哪個 Python 要執行,

它會按照一定順序依次搜尋:

搜尋順序說明

1️⃣目前所在的資料夾(Current Working Directory)

2️⃣系統環境變數 PATH 中登錄的每個資料夾(從前往後找)

3️⃣一些特殊系統目錄,如 C:\Windows\System32、WindowsApps 等

第一個被找到的 python.exe 就會被執行


🧠 二、實際案例:為什麼沒加 PATH 還是能執行?

假設你的環境如下:

C:\Users\crab1\Downloads\WPy64-312101\python\python.exe   ← WinPython 3.12
C:\Users\crab1\AppData\Local\Programs\Python\Python311\python.exe
C:\Users\crab1\AppData\Local\Programs\Python\Python38\python.exe

然後你打開 CMD,進入 WinPython 的資料夾:

cd C:\Users\crab1\Downloads\WPy64-312101\python

這時候輸入:

python --version

結果會顯示:

Python 3.12.10

即使你根本沒有把 WinPython 加入環境變數,它仍然被優先使用。

原因就是——Windows 會優先搜尋「目前所在的資料夾」


🔍 三、如何確認目前執行的是哪個 Python?

非常簡單,輸入以下指令:

where python

輸出會顯示所有找到的 Python 路徑,依照優先順序排列,例如:

C:\Users\crab1\Downloads\WPy64-312101\python\python.exe
C:\Users\crab1\AppData\Local\Programs\Python\Python311\python.exe
C:\Users\crab1\AppData\Local\Programs\Python\Python38\python.exe
C:\Users\crab1\AppData\Local\Microsoft\WindowsApps\python.exe

第一行就是目前被執行的版本。

你也可以用 Python 自己來確認:

python -c "import sys; print(sys.executable)"

輸出會顯示:

C:\Users\crab1\Downloads\WPy64-312101\python\python.exe

⚙️ 四、明確指定要使用的版本

如果你同時安裝了多個版本,

可以直接用「完整路徑」執行,避免混淆:

# 執行 Python 3.8
C:\Users\crab1\AppData\Local\Programs\Python\Python38\python.exe

# 執行 Python 3.11
C:\Users\crab1\AppData\Local\Programs\Python\Python311\python.exe

# 執行 WinPython 3.12
C:\Users\crab1\Downloads\WPy64-312101\python\python.exe

同理,安裝套件時也可以針對特定版本:

C:\Users\crab1\Downloads\WPy64-312101\python\python.exe -m pip install numpy

這樣就不會誤裝到系統的 Python 3.8 或 3.11 之中。

留言
avatar-img
留言分享你的想法!
avatar-img
螃蟹_crab的沙龍
156會員
303內容數
本業是影像辨識軟體開發,閒暇時間進修AI相關內容,將學習到的內容寫成文章分享。 興趣是攝影,踏青,探索未知領域。 人生就是不斷的挑戰及自我認清,希望老了躺在床上不會後悔自己什麼都沒做。
螃蟹_crab的沙龍的其他內容
2025/10/30
💻 在同一台電腦上讓程式互通:TCP/IP Socket 原理與實作 🧠 一、為什麼同一台電腦也能用 TCP/IP 通訊? 很多人以為 TCP/IP 只用在「跨網路」的通訊,其實不然。 TCP/IP 是一種協定(Protocol),而非實體連線。 Windows、macOS、Linux
Thumbnail
2025/10/30
💻 在同一台電腦上讓程式互通:TCP/IP Socket 原理與實作 🧠 一、為什麼同一台電腦也能用 TCP/IP 通訊? 很多人以為 TCP/IP 只用在「跨網路」的通訊,其實不然。 TCP/IP 是一種協定(Protocol),而非實體連線。 Windows、macOS、Linux
Thumbnail
2025/09/26
測試Python 3.12.10版本與目前使用的3.87版本 差異 參考以下文章 在 Python 3.8.6 vs 3.12.10 上跑同一組程式,比較不同類型任務的效能差異。 成果彙整 程式碼參考如下 🧮 數值運算密集 (CPU bound) import time def
Thumbnail
2025/09/26
測試Python 3.12.10版本與目前使用的3.87版本 差異 參考以下文章 在 Python 3.8.6 vs 3.12.10 上跑同一組程式,比較不同類型任務的效能差異。 成果彙整 程式碼參考如下 🧮 數值運算密集 (CPU bound) import time def
Thumbnail
2025/09/04
1. 什麼是物件的記憶體位置? 在 Python 中,每個物件在記憶體中都有一個唯一的位置,這個位置可以用 id() 函式查詢。 這個 id 在 CPython(最常見的 Python 實作)中,實際上就是物件的記憶體地址。 a = [1, 2, 3] print(id(a))
2025/09/04
1. 什麼是物件的記憶體位置? 在 Python 中,每個物件在記憶體中都有一個唯一的位置,這個位置可以用 id() 函式查詢。 這個 id 在 CPython(最常見的 Python 實作)中,實際上就是物件的記憶體地址。 a = [1, 2, 3] print(id(a))
看更多
你可能也想看
Thumbnail
覺得黏在額頭上的"條碼瀏海"很阿雜嗎?日本熱銷的「KOIZUMI迷你瀏海梳」,不僅小巧便攜,更能快速加熱造型,無論是齊瀏海、空氣瀏海還是韓系碎蓋髮,都能輕鬆打理!瀏海順了,一整天心情就好了!
Thumbnail
覺得黏在額頭上的"條碼瀏海"很阿雜嗎?日本熱銷的「KOIZUMI迷你瀏海梳」,不僅小巧便攜,更能快速加熱造型,無論是齊瀏海、空氣瀏海還是韓系碎蓋髮,都能輕鬆打理!瀏海順了,一整天心情就好了!
Thumbnail
走完朝聖之路和TMB後,我發現真正能撐住長時間健行的,不只是腳力,而是那些讓生活更舒服的小物。這篇整理了我在TMB實測後覺得超好用的三樣登山神器——防水襪、肥皂袋、速乾毛巾,每一樣都讓旅程更輕鬆!
Thumbnail
走完朝聖之路和TMB後,我發現真正能撐住長時間健行的,不只是腳力,而是那些讓生活更舒服的小物。這篇整理了我在TMB實測後覺得超好用的三樣登山神器——防水襪、肥皂袋、速乾毛巾,每一樣都讓旅程更輕鬆!
Thumbnail
這篇指南提供逐步教學,引導您在Visual Studio Code中設定Python開發環境,包括安裝Python和VS Code、安裝Python擴充套件、設定Python直譯器以及撰寫和執行第一個Python程式,讓Python新手也能輕鬆上手。
Thumbnail
這篇指南提供逐步教學,引導您在Visual Studio Code中設定Python開發環境,包括安裝Python和VS Code、安裝Python擴充套件、設定Python直譯器以及撰寫和執行第一個Python程式,讓Python新手也能輕鬆上手。
Thumbnail
教大家如何使用 pip 備份 python 虛擬環境,並移植到其他電腦之中,詳細圖文解說
Thumbnail
教大家如何使用 pip 備份 python 虛擬環境,並移植到其他電腦之中,詳細圖文解說
Thumbnail
建置 vscode + python 開發環境的完整流程,詳細且附圖
Thumbnail
建置 vscode + python 開發環境的完整流程,詳細且附圖
Thumbnail
創建 python 虛擬環境 (不需要安裝 Anaconda)
Thumbnail
創建 python 虛擬環境 (不需要安裝 Anaconda)
Thumbnail
1. 詳細的 python 安裝流程(不需要 anaconda) 2. 透過「命令提示字元」啟動 python 的方法
Thumbnail
1. 詳細的 python 安裝流程(不需要 anaconda) 2. 透過「命令提示字元」啟動 python 的方法
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News