[파이썬] virtualenv 완벽 가이드

 

🐍 Python virtualenv 완벽 가이드 – 설치, 사용법, VS Code 연동까지!

Python 개발을 하다 보면 프로젝트마다 서로 다른 패키지 버전이나 파이썬 버전을 사용해야 할 때가 많습니다. 이럴 때 유용하게 쓰이는 것이 바로 virtualenv (가상환경) 입니다.

이 글에서는 virtualenv의 개념부터 설치, 사용 방법, 그리고 VS Code와의 연동까지 전부 설명해드립니다.


📌 1. virtualenv란?

virtualenv파이썬 실행 환경을 격리시켜주는 도구입니다.
하나의 컴퓨터에서 프로젝트마다 서로 다른 패키지와 파이썬 버전을 사용하고 싶을 때, 각각의 가상 환경(virtual environment) 을 만들어서 독립적으로 관리할 수 있게 도와줍니다.

왜 필요할까요?

  • 프로젝트 A는 Django 3.2, B는 Django 4.0 필요

  • 전역 Python 환경에 패키지를 막 설치하면 충돌 발생

  • 배포 환경과 동일한 구성 유지가 어려움

→ 가상환경으로 격리하면 이런 문제가 사라집니다.


⚙️ 2. virtualenv 설치 방법

virtualenv는 별도의 Python 패키지로 제공되며, pip로 간단히 설치할 수 있습니다.

pip install virtualenv

설치 확인:

virtualenv --version

🧪 3. virtualenv 사용법

▶ 가상환경 생성

virtualenv venv
  • venv는 가상환경 폴더 이름 (원하는 이름 사용 가능)

  • 기본적으로 현재 시스템의 Python을 복사해서 환경을 만듭니다

🔍 특정 Python 버전으로 만들기

virtualenv -p /usr/bin/python3.10 venv # 또는 (Windows) virtualenv -p C:\Python39\python.exe venv

💡 시스템에 해당 버전이 설치되어 있어야 합니다!


▶ 가상환경 활성화

  • Windows:

    .\venv\Scripts\activate
  • macOS/Linux:

    source venv/bin/activate

활성화되면 프롬프트 앞에 (venv)가 붙습니다.


▶ 패키지 설치

이제 가상환경 내에서 pip 사용 가능:

pip install flask

→ 이 설치는 시스템에 영향을 주지 않고, 오직 venv 안에서만 작동합니다.


▶ 비활성화

deactivate

가상환경에서 빠져나옵니다.


💻 4. VS Code와 virtualenv 연동

VS Code는 Python 가상환경을 자동으로 감지하고 연동할 수 있습니다.

📁 Step 1. VS Code에서 프로젝트 폴더 열기

code my_project/

⚙️ Step 2. 인터프리터 선택

  1. Ctrl + Shift + P (Mac은 Cmd + Shift + P)

  2. "Python: Select Interpreter" 입력

  3. ./venv/Scripts/python.exe 또는 ./venv/bin/python 선택

VS Code에 Python 확장 프로그램이 설치되어 있어야 합니다.

🔁 Step 3. 터미널 자동 활성화 확인

VS Code 터미널에서 자동으로 가상환경이 활성화됩니다.
활성화되지 않으면 수동으로 아래 명령어 입력:

# Windows .\venv\Scripts\activate # macOS/Linux source venv/bin/activate

🛠️ (선택) .vscode/settings.json로 고정

{ "python.pythonPath": "venv/Scripts/python.exe" // Windows // 또는 "venv/bin/python" (macOS/Linux) }

이렇게 하면 프로젝트마다 VS Code가 해당 가상환경을 항상 사용하게 됩니다.


📦 5. 가상환경에 대해 자주 묻는 질문 (FAQ)

Q1. .\venv\Scripts\python.exe는 링크인가요?

❌ 아닙니다. 시스템에 설치된 Python 실행 파일을 복사한 실제 파일입니다.


Q2. 시스템 Python을 바꾸면 가상환경도 바뀌나요?

❌ 아니요. 가상환경은 생성 시점의 Python을 복사해오기 때문에, 시스템 Python을 바꿔도 영향을 받지 않습니다.


✨ 마무리

Python을 전문적으로 다루려면 가상환경은 필수 도구입니다.
virtualenv는 가볍고 직관적이며, VS Code와도 잘 연동되어 생산성을 높여줍니다.

댓글

이 블로그의 인기 게시물

공압 속도 제어: 미터인 vs 미터아웃

[PLC] PLC 아날로그 입출력 기본

[주식] 한국거래소(KRX) 데이터 API 입문 가이드

[PLC] 절연 변압기 (Isolation Transformer)

[수학] 정규 분포란? 왜 종 모양을 띠고 있을까?

[농사] 식물의 광합성과 호흡

제너 다이오드에 저항을 연결하는 이유

[자동화] 안쓰는 안드로이드폰을 활용한 식물 성장 타임랩스 촬영

[트레이딩] 현재 주가 기준으로 기대수익률은 어떻게 계산할까?

[PLC] 래더 다이어그램과 PLC