[問題] vscode切換python版本後的一連串問題

作者: fragmentwing (片翼碎夢)   2023-02-21 13:12:00
如題 python3.8以後有新用法,理論上如下:
程式碼:
variable_name = 10
f'get {variable_name=}'
執行:
get variable_name = 10
我切換版本到3.7.8再切回3.10.5之後,突然就不能用這個功能了
(會報文法錯誤)
然後我以前裝的package也突然全部不能用了要重裝
到底是為甚麼?還有救嗎?
用的IDE是VSCODE,已經有把Activate Environment那個選項取消了
https://imgur.com/Latgr9d
另外,我用vscode內的notebook跑pip list,出來的和我的
C:\Users\User\AppData\Local\Programs\Python\Python310\Lib\site-packages
底下的package一樣多(約200項)
但是我用執行的方式跑指令pip list,卻只有顯示我最近重裝的那幾個package
(感覺是沒有真的把版本切回3.10.5的樣子,因為我查看
C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages
裝的差不多就這幾個東西)
補充,這是我的現狀:
https://imgur.com/sirVxiK
右下編譯器選3.10.5,執行起來path.sys顯示就是在3.7.8那邊
網路上教學都只教到改編譯器那邊,好像沒有人講編譯器那邊改過後還是不行該怎麼辦
作者: fragmentwing (片翼碎夢)   2023-02-21 16:22:00
嗯 找了個叫print(sys.path)的碼來確認確實是給我用到Python37那邊然後VSCODE右下角的切換似乎只是編輯介面上的切換完全不影響到實際上使用的編譯器是哪邊目前我只能直接刪掉3.7.8 讓vscode只有3.10能抓……最毛的是我就算重裝3.7.8的時候選不要加入環境變數所以在vscode內搜尋不到3.7.8的環境變數 但是執行的時候還是會自動選擇3.7.8……這純粹是想氣死我嗎?
作者: TuCH (謬客)   2023-02-21 17:33:00
學一下conda
作者: ddavid (謊言接線生)   2023-02-21 18:31:00
VSCode 手動開終端機,以及按執行開啟終端機,兩者的設定點不同,要分別確認一下不過用 conda 的話應該不用特別做什麼額外設定就會抓到,除非真的搞來搞去搞爛了
作者: fragmentwing (片翼碎夢)   2023-02-21 18:43:00
想問一下手動是指什麼?command line嗎?如果是的話我也試過了QQ
作者: lycantrope (阿寬)   2023-02-21 22:20:00
python.defaultInterpreterPath沒設定可以在同一資料夾內 .vscode/settings.json 裡面指定然後你關掉active env 在vscode開terminal當然不會幫自動activate環境啊
作者: fragmentwing (片翼碎夢)   2023-02-22 07:25:00
痾……照你說的做,不行欸,它好像就是會自動套用最新下載的那個編譯器而且我去查你說的default,自始至終都是設給3.10.5
作者: lycantrope (阿寬)   2023-02-22 08:03:00
就算講了解法你也聽不懂,沒救。
作者: fragmentwing (片翼碎夢)   2023-02-22 08:45:00
你確定不是剛好你的解法在我這邊不管用嗎? 還是你的setting.json不是我們按f1後用setting搜出來的那個?這裡不是stack overflow講話沒必要這麼嗆吧https://imgur.com/eVamSYs照你的說法,應該是改成這樣?但還是行不通
作者: lycantrope (阿寬)   2023-02-22 09:13:00
設定放在another.py資料夾下的.vscode/settings.jsonvscode重新開資料夾才能覆寫你之前的設定在vscode本身設定又不影響已經設置的workplace
作者: fragmentwing (片翼碎夢)   2023-02-22 09:28:00
.py為什麼會是個「資料夾」?你的意思是應該開一個新folder然後在該folder內放一個setting.json來指向特定的編譯器嗎?啊 我可能找到答案了 是python installer造成的問題的樣子 不過我還不確定怎麼解更正一下 比較準確的說法是python在windows的installer
作者: Abieskawa (手殘打錯字)   2023-03-02 10:22:00
我有遇到類似問題,後來使用conda (註:~/也不行)activate 環境的絕對路徑給你參考
作者: Hsins (翔)   2023-03-03 14:03:00
作者: lycantrope (阿寬)   2023-03-03 14:36:00
推樓上,有拍教學,佛心來著www
作者: s860134 (s860134)   2023-03-03 16:08:00
多學多看少質疑,都在講同件事只是你聽無
作者: fragmentwing (片翼碎夢)   2023-03-06 18:40:00
這和l大講的不同吧……我是說h大講的 另外h大聲音好聽應該說 層級上是不同的 反正照l大的方法是無法解決問題 應該真的只能用conda去解……
作者: lycantrope (阿寬)   2023-03-06 21:03:00
你爽就好,現在不懂以後還是會碰到一樣問題。
作者: fragmentwing (片翼碎夢)   2023-03-06 21:51:00
我也只能說 你高興 我高興就好

Links booklink

Contact Us: admin [ a t ] ucptt.com