
📦 파이썬 완벽 가이드: 프로젝트의 독립된 작업실, 가상환경(venv) 끄고 켜기
저번 시간에 우리는 pip를 이용해 파이썬이라는 스마트폰에 전 세계의 유용한 앱(패키지)들을 설치하는 방법을 배웠습니다.
그런데 만약 A 프로젝트에서는 옛날 버전의 앱이 필요하고, B 프로젝트에서는 최신 버전의 앱이 필요하다면 어떻게 될까요? 한 컴퓨터 안에 이것저것 마구잡이로 설치하다 보면 패키지들끼리 충돌이 일어나서 에러가 나기 십상입니다.
이때 필요한 것이 바로 '가상환경(Virtual Environment)' 입니다.
📖 1. 필수 용어 및 이론 정리
- 가상환경 (venv): 파이썬 프로젝트마다 벽을 쳐서 '완전히 독립된 방(작업실)'을 만들어주는 기능입니다. 방마다 따로따로 패키지를 설치할 수 있어서 코드가 꼬이지 않게 지켜줍니다.
- 활성화 (Activate): "이제부터 이 독립된 방에 들어가서 작업할게!" 하고 선언하는 것입니다. (운영체제마다 다르지만 보통 activate라는 스크립트를 실행합니다.)
- 비활성화 (deactivate):
- 오늘의 정답! "독립된 방에서 작업 끝났으니, 다시 원래 내 컴퓨터의 기본 바탕화면으로 나갈게!" 라고 명령하는 것입니다.
- 가상환경이 켜진 터미널(명령 프롬프트) 창에 deactivate 라고 치고 엔터를 누르면 즉시 방에서 빠져나옵니다.
💻 2. 흐름으로 보는 가상환경 ON/OFF
명령 프롬프트에서 가상환경에 들어가고 나오는 모습은 보통 이렇게 생겼습니다. (화면 왼쪽에 괄호 이름이 생겼다 사라지는 것을 눈여겨보세요!)
# [1] 평소 내 컴퓨터 상태입니다.
C:\Users\Kim>
# [2] 'my_project'라는 가상환경 방으로 들어갑니다. (활성화)
# (이때 화면 맨 왼쪽에 (방 이름) 형태의 꼬리표가 생깁니다!)
(my_project) C:\Users\Kim> pip install requests # <- 이 방에만 패키지 설치됨
# [3] 작업을 마치고 방에서 나옵니다. (오늘 퀴즈의 정답!)
(my_project) C:\Users\Kim> deactivate
# [4] 꼬리표가 사라지고 다시 원래 컴퓨터 상태로 돌아왔습니다.
C:\Users\Kim>
이렇게 터미널에 deactivate라는 마법의 단어 하나만 입력하면, 안전하게 가상환경을 종료할 수 있답니다. (보기 중에 있던 exit, stop, break는 파이썬 가상환경을 끄는 올바른 명령어가 아닙니다.)
📝 3. 핵심 한 줄 총정리 요약
"프로젝트마다 꼬이지 않게 독립된 작업 방(가상환경)을 만들고, 그 방에서 나올 때는 반드시 deactivate 명령어를 치고 나오자!"

📦 파이썬 완벽 가이드: 나만의 독립된 코딩 작업실 만들기 (venv)
앞으로 파이썬으로 관광 데이터를 수집하거나 나만의 멋진 웹 서비스를 개발하실 때, 수많은 외부 도구(패키지)들을 설치하게 될 텐데요. 이때 패키지들이 서로 엉켜서 에러가 나지 않도록 프로젝트마다 '독립된 방(가상환경)'을 만들어주는 것이 실무의 기본 중 기본입니다.
💻 1. 명령어 한 줄씩 뜯어보기
터미널(또는 명령 프롬프트) 창에 입력하는 정답 명령어는 마치 컴퓨터에게 내리는 문장과 같습니다.
- python : "파이썬아, 지금부터 내가 하는 명령을 실행해 줘!"
- -m venv : "네가 기본적으로 품고 있는 모듈(-m, module) 중에서, 가상환경을 만드는 venv (Virtual Environment)라는 마법 도구를 꺼내 써!"
- mytest : "그리고 새로 만들 그 방(폴더)의 문패 이름은 mytest 라고 지어줘!"
(참고로 보기 중에 있던 create라는 명령어는 파이썬에서 가상환경을 만들 때 쓰지 않는 함정 단어랍니다.)
📖 2. 핵심 요약: 가상환경 라이프사이클 3단계 완성!
지금까지 맞히신 퀴즈들을 종합해 보면, 파이썬 가상환경의 전체 흐름이 완벽하게 완성됩니다.
- 방 만들기 (오늘의 정답!) : python -m venv mytest
- 방 들어가기 (활성화) : 만든 폴더 안의 스크립트를 실행합니다. (보통 윈도우에서는 mytest\Scripts\activate 를 입력합니다.)
- 방 나오기 (저번 퀴즈 정답!) : deactivate
'두두 IT > 파이썬 퀴즈' 카테고리의 다른 글
| [W3S 오답노트] Python __init__ Method (0) | 2026.05.06 |
|---|---|
| [W3S 오답노트] Python Classes (0) | 2026.05.06 |
| [W3S 오답노트] Python String Formatting(.2f, .1%, :,) (0) | 2026.05.06 |
| [W3S 오답노트] Python PIP(pip list) (0) | 2026.05.06 |
| [W3S 오답노트] Python RegEx(정규표현식) re.findall(), re.search() (0) | 2026.05.06 |