在 vscode 的 poetry 想用 python interpreter
能在 vscode 上使用由 poetry 產生出來的 virtual environment,讓 python interpreter 可以自動讀取到。
緣由
poetry 他的 env 預設會是在 ~/.poetry
的某一個奇怪的地方,並且有奇怪的名字,像是下圖我創了個 fastapi-play
的 venv 。
Poetry 環境的指令介紹
同個專案可能有不同的 virtual enviroment ,或是你想看更多目前環境的細節,都可以透過 poetry env
相關的指令查看或變更。
下面的 venv path 我已經有修改過了,跟上面不一樣是正常滴
查看目前使用到的 env
$ poetry env info
查看目前專案有建立的 virtual environment
$ poetry env list
變更 virtual environment
假如你有建立多個 virtual environment ,且從上面的指令也可以看到,這時候你可以透過 poetry 的指令變更 virtual environment
$ poetry env use <python>
移除 virtual environment
可能為了重新安裝 virtual environment 或為了測試套件,可能會移除 virtual environment 。
$ poetry env remove <python>
ok~ 以上的指令大致上介紹了 poetry env 的管理,詳細可以參考最下面的 reference 。
建立 vscode 與 poetry env 的連結
$ poetry config virtualenvs.in-project true
谷歌了下,發現 poetry 已經有內建好了~
把這個設定 enable 後,virtualenvs 的 path 會直接建立在 project 裡面,path 為 $PROJECT/.venv
,這樣未來要取用就很方便。
我改完設定後,vscode 直接就可以吃到。
刪除舊的 virtualenv,根據上面的 config 安裝新的
$ poetry remove <python>
$ poetry install
結論
方便!解決問題