1. VScode 환경에서 Venv 경로 설정 옵션

venv 사용하여 가상환경을 생성한 뒤 가상환경의 인터프리터를 사용하려면 경로 설정을 해줘야한다. 이 때 경로 설정의 옵션은 총 2가지가 있으며 다음과 같다.

  • python.venvFolders
  • python.venvPath

ctrl + ',' 를 눌러 설정화면으로 들어온 뒤 venv를 키워드에 넣고 검색하면 위와 같은 설정이 보인다.

 

ctrl + shift + p를 눌러 default settings.json으로 들어와서 확인한 venv의 값

 

1.1 python.venvFolders

해당 옵션은 사용자의 홈 디렉토리 아래에 있는 venv 가상 환경이 저장된 위치의 상대 경로들을 입력하여 사용할 수 있다. mac, linux에서는 홈 디렉토리가 눈에 띄지만 윈도우 환경에서는 생각하기 어려울 수 있다. 

 

윈도우의 홈 디렉토리

보통 cmd, powershell을 실행하게 되면 처음 시작하는 경로가 윈도우의 홈 디렉토리이며, powershell이라면 cd ~를 통해 홈 디렉토리로 이동하는 명령어를 수행해볼 수 있다.

 

또는 cmd라면 `cd %userprofile%` 를 통해 홈 디렉토리로 이동할 수 있으며, echo  %userprofile%를 수행해도 홈 디렉토리 명을 확인할 수 있다. 

 

 

사용 예시

현재 홈디렉토리 아래에 있는 나의 가상 환경의 절대 경로는 다음과 같다.

C:\Users\사용자이름\Desktop\VenvPathTest

 

여기서 `C:\Users\사용자이름`까지가 홈 디렉토리이므로 vevn folders 옵션에는 다음과 같이 업력해준다.

\Desktop\VenvPathTest

실제로 VScode에서 입력된 VenvFolders의 값

이처럼 입력하면 `ctrl + shipt + p`를 통해 select interpreter에 진입했을 떄 다음과 같이 경로가 잡힌 것을 확인할 수 있으며, 작성되어 있는 경로의 맨 앞에는 `~`가 작성되어 있어 홈 디렉토리에서 경로가 시작된다.

 

그리고 이처럼 User Settings.json으로 진입하면 해당 내용으로 json에 기입된 것을 확인가능하다.

user.seetings.json의 venvFolders 설정값

 

 

1.2 python.venvPath

이는 venv로 생성한 가상환경이 저장되어 있는 위치의 절대 경로를 입력하면 해당 경로의 venv 가상환경을 잡아준다. 값의 입력은 가상환경이 저장되어있는 경로의 부모경로를 입력하여도 상관없다.

 

 

2. 결과

venv folders, venv path를 적용해본 모습.

 

개인적으로는 상대 경로를 입력하는 venv folders로 세팅하기보다 venv path로 단순히 절대 경로를 입력해서 사용할 것 같다. vscode의 settings sync에서 sync되지 않기 떄문에 각 로컬환경에 맞춰 편하게 세팅할 것 같다.

 

 

 

 

참고자료

https://github.com/microsoft/vscode-python/issues/10004https://github.com/microsoft/vscode-python/issues/10004

https://github.com/Microsoft/vscode-python/blob/2b6a8f2d439fe9d5e66665ea46d8b690ac9b2c39/src/client/interpreter/locators/services/globalVirtualEnvService.ts#L43-L44