Re: [閒聊] python 大師請進

看板Marginalman作者 (為寺川愛美瘋狂打call)時間4周前 (2026/02/21 02:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/4 (看更多)
※ 引述 《surimodo (好吃棉花糖)》 之銘言: :   : 我 windows cmd : 可以正常使用 python 跟 pip :   : 但是在 vs code 裡面的cmd或ps :   : python 查無指令 : pip 是指向舊的 python :   : extenstion 的 python interpreter 有正常設定 : 如果是點執行可以正常執行 :   :   : 要怎麼修vs code 裡的執行路徑 :   這是一個典型的 環境變數(PATH)同步問題。VS Code 的整合終端機(Terminal)有時候 會「記住」舊的路徑,或者因為載入順序問題,沒能抓到你在系統中剛改好的 Python 設定 。 既然你在一般 CMD 是正常的,代表系統環境變數沒問題,問題出在 VS Code 的快取或終端 機設定。請依照以下步驟排查: 1. 最簡單的暴力法:重啟 VS Code VS Code 的終端機在啟動後就不會主動更新環境變數。 * 徹底關閉所有 VS Code 視窗。 * 重新開啟 VS Code,然後開一個新的終端機測試。 2. 檢查終端機的「環境繼承」設定 VS Code 有一個設定可能會阻止它讀取最新的系統路徑。 * 按 Ctrl + , 開啟設定。 * 搜尋 terminal.integrated.inheritEnv。 * 確保這個選項是 勾選 (Checked) 的。 3. 清除 VS Code 終端機快取 有時候 VS Code 會嘗試「恢復」之前的工作階段,導致抓到舊的路徑: * 在 VS Code 終端機面板,點擊垃圾桶圖示 "Kill Terminal" 關閉所有啟動中的終端機 。 * 重新按 Ctrl + ~ 開啟一個新的終端機,這會強迫它重新讀取系統變數。 4. 解決 PowerShell 的執行權限(針對 pip 問題) 如果你在 PowerShell 裡 pip 指向舊的,但在 CMD 是對的,通常是因為 PowerShell 有自 己的 Profile 或路徑優先權。 * 在 VS Code 終端機切換嘗試使用 Command Prompt (CMD) 而不是 PowerShell。 * 點擊終端機右上角的「+」號旁的下拉箭頭 -> Select Default Profile -> 選擇 Comma nd Prompt。 5. 終極解決方案:手動指定終端機路徑 如果以上都沒用,你可以強迫 VS Code 在啟動終端機時注入正確的路徑: * 開啟 settings.json (按 F1 輸入 Open User Settings (JSON))。 * 檢查是否有 terminal.integrated.env.windows 這一項。 * 如果路徑亂掉了,你可以手動加入你的 Python 路徑(雖然不建議長期這樣做,但這最 有效): <!-- end list --> "terminal.integrated.env.windows": { "PATH": "C:\\你的Python安裝路徑;C:\\你的Python安裝路徑\\Scripts;${env:PATH}" } 為什麼「點擊執行」是正常的? 這是因為 VS Code 的 Python Extension 非常聰明,當你點擊右上角的「播放」按鈕時, 它是直接呼叫 python.exe 的完整絕對路徑(例如 C:\Python312\python.exe script.py) ,所以它不需要依賴環境變數。但當你在終端機手打 python 時,電腦就只能靠 PATH 去大 海撈針了。 建議下一步: 你可以先在 VS Code 終端機輸入 where python (CMD) 或 Get-Command python (PS),看 看它目前到底是指向哪裡嗎?這能幫我們精確鎖定是哪個「幽靈路徑」在搗亂。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.228.129.84 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1771612368.A.94C.html
文章代碼(AID): #1fcAZGbC (Marginalman)
文章代碼(AID): #1fcAZGbC (Marginalman)