VSCode指定Python路徑快捷運行py腳本之前寫過了,這樣配置有一個問題:所有的python腳本都使用的同一個python來執行的.現在是虛擬環境的天下,怎樣做到不同的項目使用的不同的Python環境呢?
想做到這個也簡單,關鍵三點
一.使用不同的VSCode打開不同的項目
二.虛擬環境以同樣的文件夾名放在項目根目錄如.venv
三.之前的python路徑設置相對路徑 .venv/bin/python
預期目標兩個:
一 使用Command+Shift+b運行時使用當前虛擬環境的python
二 py文件右鍵 在終端中打開
或 Open in Integrated Terminal
時自動激活當前虛擬環境
因為筆者鍾愛pipenv所以就以它創建虛擬環境演示了.
創建項目並將虛擬環境放在.venv
➜ Desktop mkdir c_test_py ➜ Desktop cd c_test_py ➜ c_test_py mkdir .venv ➜ c_test_py pipenv --python 3.8.2 Creating a virtualenv for this project... Pipfile: /Users/rainbird/Desktop/c_test_py/Pipfile Using /Users/rainbird/.pyenv/versions/3.8.2/bin/python (3.8.2) to create virtualenv... ⠸ Creating virtual environment...Already using interpreter /Users/rainbird/.pyenv/versions/3.8.2/bin/python Using base prefix '/Users/rainbird/.pyenv/versions/3.8.2' New python executable in /Users/rainbird/Desktop/c_test_py/.venv/bin/python Installing setuptools, pip, wheel... done. Running virtualenv with interpreter /Users/rainbird/.pyenv/versions/3.8.2/bin/python ✔ Successfully created virtual environment! Virtualenv location: /Users/rainbird/Desktop/c_test_py/.venv Creating a Pipfile for this project... ➜ c_test_py pipenv shell Launching subshell in virtual environment... . /Users/rainbird/Desktop/c_test_py/.venv/bin/activate ➜ c_test_py . /Users/rainbird/Desktop/c_test_py/.venv/bin/activate (c_test_py) ➜ c_test_py python -V Python 3.8.2 (c_test_py) ➜ c_test_py
通過上面可以看到,我們最後一個pipenv shell成功激活了當前目錄下的.venv的虛擬環境
VSCode新建窗口打開新工程
或者直接將新創建c_test_py文件件拖到新容器也可以.
配置python路徑為相對路徑
VSCode菜單-終端->配置任務
將之前的絕對路徑改成相對路徑 .venv/bin/python
{ // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "2.0.0", "tasks": [ { //command + shift + b 運行時使用 "label": "python", "type": "shell", "command": ".venv/bin/python", "args": [ "${file}" ], "group": { "kind": "build", "isDefault": true } } ] }
驗證
在新開的文件夾裡新建index.py並輸出hello world
print('hello world !')
通過command+shift+b運行發現已經是使用的相對路徑了.
在index.py上右鍵選擇 在終端中打開
也自動激活了當前虛擬環境,完美!!!
[techdo ] VSCode配合pipenv搞定虛擬環境的實現方法已經有433次圍觀