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

看板Python作者 (片翼碎夢)時間1年前 (2023/02/21 13:12), 1年前編輯推噓5(5045)
留言50則, 7人參與, 1年前最新討論串1/1
如題 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那邊 網路上教學都只教到改編譯器那邊,好像沒有人講編譯器那邊改過後還是不行該怎麼辦 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.139.14.183 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1676956324.A.1A6.html ※ 編輯: fragmentwing (223.139.14.183 臺灣), 02/21/2023 13:18:01

02/21 16:22, 1年前 , 1F
嗯 找了個叫print(sys.path)的碼來確認
02/21 16:22, 1F

02/21 16:22, 1年前 , 2F
確實是給我用到Python37那邊
02/21 16:22, 2F

02/21 16:22, 1年前 , 3F
然後VSCODE右下角的切換似乎只是編輯介面上的切換
02/21 16:22, 3F

02/21 16:23, 1年前 , 4F
完全不影響到實際上使用的編譯器是哪邊
02/21 16:23, 4F
※ 編輯: fragmentwing (223.139.14.183 臺灣), 02/21/2023 16:50:01

02/21 17:01, 1年前 , 5F
目前我只能直接刪掉3.7.8 讓vscode只有3.10能抓…
02/21 17:01, 5F

02/21 17:01, 1年前 , 6F
02/21 17:01, 6F

02/21 17:06, 1年前 , 7F
最毛的是我就算重裝3.7.8的時候選不要加入環境變數
02/21 17:06, 7F

02/21 17:06, 1年前 , 8F
所以在vscode內搜尋不到3.7.8的環境變數 但是執行的
02/21 17:06, 8F

02/21 17:06, 1年前 , 9F
時候還是會自動選擇3.7.8……這純粹是想氣死我嗎?
02/21 17:06, 9F

02/21 17:33, 1年前 , 10F
學一下conda
02/21 17:33, 10F

02/21 18:31, 1年前 , 11F
VSCode 手動開終端機,以及按執行開啟終端機,兩者的設定
02/21 18:31, 11F

02/21 18:33, 1年前 , 12F
點不同,要分別確認一下
02/21 18:33, 12F

02/21 18:34, 1年前 , 13F
不過用 conda 的話應該不用特別做什麼額外設定就會抓到,
02/21 18:34, 13F

02/21 18:34, 1年前 , 14F
除非真的搞來搞去搞爛了
02/21 18:34, 14F

02/21 18:43, 1年前 , 15F
想問一下手動是指什麼?command line嗎?
02/21 18:43, 15F

02/21 18:44, 1年前 , 16F
如果是的話我也試過了QQ
02/21 18:44, 16F

02/21 22:20, 1年前 , 17F
python.defaultInterpreterPath沒設定
02/21 22:20, 17F

02/21 22:21, 1年前 , 18F
可以在同一資料夾內 .vscode/settings.json 裡面指定
02/21 22:21, 18F

02/21 22:23, 1年前 , 19F
然後你關掉active env 在vscode開terminal當然不會幫
02/21 22:23, 19F

02/21 22:24, 1年前 , 20F
自動activate環境啊
02/21 22:24, 20F

02/22 07:25, 1年前 , 21F
痾……照你說的做,不行欸,它好像就是會自動套用最
02/22 07:25, 21F

02/22 07:25, 1年前 , 22F
新下載的那個編譯器
02/22 07:25, 22F

02/22 07:25, 1年前 , 23F
而且我去查你說的default,自始至終都是設給3.10.5
02/22 07:25, 23F

02/22 08:03, 1年前 , 24F
就算講了解法你也聽不懂,沒救。
02/22 08:03, 24F

02/22 08:45, 1年前 , 25F
你確定不是剛好你的解法在我這邊不管用嗎? 還是你的
02/22 08:45, 25F

02/22 08:45, 1年前 , 26F
setting.json不是我們按f1後用setting搜出來的那個?
02/22 08:45, 26F

02/22 08:45, 1年前 , 27F
這裡不是stack overflow講話沒必要這麼嗆吧
02/22 08:45, 27F

02/22 08:49, 1年前 , 28F

02/22 08:50, 1年前 , 29F
照你的說法,應該是改成這樣?但還是行不通
02/22 08:50, 29F

02/22 09:13, 1年前 , 30F
設定放在another.py資料夾下的.vscode/settings.json
02/22 09:13, 30F

02/22 09:13, 1年前 , 31F
vscode重新開資料夾才能覆寫你之前的設定
02/22 09:13, 31F

02/22 09:14, 1年前 , 32F
在vscode本身設定又不影響已經設置的workplace
02/22 09:14, 32F

02/22 09:28, 1年前 , 33F
.py為什麼會是個「資料夾」?
02/22 09:28, 33F

02/22 09:28, 1年前 , 34F
你的意思是應該開一個新folder然後在該folder內放一
02/22 09:28, 34F

02/22 09:28, 1年前 , 35F
個setting.json來指向特定的編譯器嗎?
02/22 09:28, 35F

02/22 09:49, 1年前 , 36F
啊 我可能找到答案了 是python installer造成的問題
02/22 09:49, 36F

02/22 09:49, 1年前 , 37F
的樣子 不過我還不確定怎麼解
02/22 09:49, 37F

02/22 09:52, 1年前 , 38F
更正一下 比較準確的說法是python在windows的instal
02/22 09:52, 38F

02/22 09:52, 1年前 , 39F
ler
02/22 09:52, 39F

03/02 10:22, 1年前 , 40F
我有遇到類似問題,後來使用conda (註:~/也不行)ac
03/02 10:22, 40F

03/02 10:22, 1年前 , 41F
tivate 環境的絕對路徑給你參考
03/02 10:22, 41F

03/03 14:03, 1年前 , 42F

03/03 14:36, 1年前 , 43F
推樓上,有拍教學,佛心來著www
03/03 14:36, 43F

03/03 16:08, 1年前 , 44F
多學多看少質疑,都在講同件事只是你聽無
03/03 16:08, 44F

03/06 18:40, 1年前 , 45F
這和l大講的不同吧……
03/06 18:40, 45F

03/06 18:41, 1年前 , 46F
我是說h大講的 另外h大聲音好聽
03/06 18:41, 46F

03/06 18:46, 1年前 , 47F
應該說 層級上是不同的 反正照l大的方法是無法解決
03/06 18:46, 47F

03/06 18:46, 1年前 , 48F
問題 應該真的只能用conda去解……
03/06 18:46, 48F

03/06 21:03, 1年前 , 49F
你爽就好,現在不懂以後還是會碰到一樣問題。
03/06 21:03, 49F

03/06 21:51, 1年前 , 50F
我也只能說 你高興 我高興就好
03/06 21:51, 50F
文章代碼(AID): #1Zz5Aa6c (Python)
文章代碼(AID): #1Zz5Aa6c (Python)