Python 설치부터 가상환경까지, 전문가처럼 개발 환경을 구성한다.
🎯 이 강의에서 배우는 것
파이썬을 배우는 가장 좋은 방법은 직접 코드를 실행해보는 것입니다. 그러려면 먼저 제대로 된 개발 환경이 필요합니다. 이 강의에서는 Python 설치부터 버전 선택, 터미널 사용법, VS Code 설정, 그리고 실무에서 반드시 필요한 가상환경(virtual environment)까지 전문가 수준으로 구성하는 방법을 배웁니다.
📜 Python 버전의 역사 — 무엇을 설치해야 하는가
파이썬에는 크게 두 세대가 있습니다: Python 2와 Python 3. 2020년 1월 1일, Python 2는 공식 지원이 종료(End of Life)됐습니다. 지금 파이썬을 처음 배운다면 반드시 Python 3를 사용해야 합니다.
두 버전의 핵심 차이는 다음과 같습니다:
| 항목 | Python 2 | Python 3 |
|---|---|---|
| print 문법 | print "hello" (문장) | print("hello") (함수) |
| 정수 나눗셈 | 5 / 2 = 2 (정수 반환) | 5 / 2 = 2.5 (실수 반환) |
| 기본 문자열 | 바이트 문자열 | 유니코드 문자열 (전 세계 언어 지원) |
| range() | 리스트 반환 | 이터레이터 반환 (메모리 효율적) |
Python 3의 세부 버전도 중요합니다. 주요 버전별 핵심 기능은 다음과 같습니다:
- 3.8: 바다코끼리 연산자(
:=), f-string 디버깅(f"{x=}"), 위치 전용 매개변수(/) - 3.10: 구조적 패턴 매칭(
match-case), 더 나은 오류 메시지 - 3.11: 대폭 향상된 성능(CPython 최적화), 더 정확한 오류 위치 표시
- 3.12: f-string 다중 줄 허용, 개선된 오류 메시지, GIL 제거 준비
이 강좌는 Python 3.10 이상을 기준으로 설명합니다. 특별한 이유가 없다면 최신 안정 버전(LTS에 해당하는 버전)을 설치하세요.
🔧 Python 설치와 PATH 설정
운영체제별 설치 방법이 조금 다릅니다. 각 방법을 살펴봅시다.
# 설치 후 터미널에서 버전 확인
# (아래 명령어는 터미널/명령 프롬프트에서 실행)
# python --version # Python 3.12.3
# python3 --version # macOS/Linux에서는 python3를 써야 할 수도 있음
# pip 패키지 관리자 버전 확인
# pip --version # pip 24.0 from ...
Windows: python.org에서 설치 시 반드시 "Add Python to PATH" 체크박스를 선택하세요. PATH에 추가해야 터미널 어디서든 python 명령을 실행할 수 있습니다.
macOS: 시스템에 기본 설치된 Python은 2.x이거나 매우 오래된 3.x일 수 있습니다. brew install python으로 Homebrew를 통해 최신 버전을 설치하는 것을 권장합니다.
Linux(Ubuntu): sudo apt install python3 python3-pip로 설치합니다.
PATH 환경변수란 무엇일까요? 터미널에서 python을 입력하면 운영체제는 PATH에 등록된 디렉토리들을 순서대로 검색해 python.exe(또는 python 실행파일)를 찾습니다. PATH에 파이썬 경로가 없으면 "명령을 찾을 수 없습니다" 오류가 납니다. Python을 여러 버전 설치한 경우 PATH 순서가 어떤 버전이 실행될지를 결정합니다.
💻 터미널과 REPL — 즉각적인 실험 도구
터미널(terminal)은 텍스트 명령으로 컴퓨터와 대화하는 프로그램입니다. Windows의 명령 프롬프트·PowerShell, macOS/Linux의 bash·zsh가 이에 해당합니다. 파이썬 개발에서 터미널은 필수 도구입니다.
터미널에서 python을 입력하면 REPL(Read-Eval-Print Loop)이 시작됩니다. REPL은 코드를 읽고(Read), 평가하고(Evaluate), 결과를 출력하고(Print), 다시 입력을 기다리는(Loop) 인터랙티브 환경입니다.
>>> 2 + 3
5
>>> "hello".upper()
'HELLO'
>>> type(42)
<class 'int'>
# _ 변수: 마지막 평가 결과를 자동으로 저장
>>> 10 * 5
50
>>> _ + 1
51
# 여러 줄 코드 입력 (들여쓰기 후 빈 줄로 종료)
>>> for i in range(3):
... print(i)
...
0
1
2
>>> exit() # REPL 종료
REPL은 새로운 개념을 빠르게 실험하기에 최적입니다. "이 함수가 어떻게 동작하지?"라는 질문이 생기면 REPL에서 즉시 확인하는 습관을 들이세요. help(함수명)으로 도움말도 바로 확인할 수 있습니다.
🖥️ VS Code 설정 — 효율적인 편집 환경
REPL은 실험에 좋지만 파일을 저장하고 프로젝트를 관리하려면 코드 편집기가 필요합니다. VS Code(Visual Studio Code)는 무료이면서 강력한 파이썬 개발 환경을 제공합니다.
필수 설정 단계:
- Python 확장 설치: VS Code 확장 마켓플레이스에서 "Python" (Microsoft 제공)을 설치합니다. 이 확장이 인터프리터 선택, 디버거, IntelliSense를 활성화합니다.
- 인터프리터 선택:
Ctrl+Shift+P(Mac:Cmd+Shift+P) → "Python: Select Interpreter" → 설치된 파이썬 버전을 선택합니다. 가상환경을 만든 후에는 해당 가상환경의 인터프리터를 선택하세요. - Linter 설정: Linter는 코드의 문법 오류와 스타일 문제를 실시간으로 표시합니다.
pylint: 가장 엄격하고 많은 규칙. 큰 프로젝트에 적합.flake8: PEP 8 스타일 가이드 준수 여부 검사. 가볍고 빠름.ruff: Rust로 작성된 매우 빠른 최신 Linter. flake8 + isort + 더 많은 규칙. 현재 적극 권장.
- Formatter 설정:
black은 코드를 일관된 스타일로 자동 포맷합니다. 팀 협업 시 "스타일 논쟁"을 없애는 효과가 있습니다.Shift+Alt+F로 즉시 포맷.
# 터미널에서 개발 도구 설치
pip install ruff black
# ruff로 현재 디렉토리의 모든 파이썬 파일 검사
# ruff check .
# black으로 파일 포맷
# black my_script.py
🏝️ 가상환경(venv) — 프로젝트를 오염으로부터 보호하기
가상환경은 파이썬 개발에서 가장 중요한 개념 중 하나입니다. 왜 필요한지부터 이해해봅시다.
문제 상황: 프로젝트 A는 requests==2.28.0이 필요하고, 프로젝트 B는 requests==2.31.0이 필요합니다. 전역 파이썬 환경에는 버전 하나만 설치할 수 있으므로 두 프로젝트 중 하나는 반드시 문제가 생깁니다. 이것을 의존성 충돌(dependency conflict)이라고 합니다.
해결책: 각 프로젝트마다 독립된 파이썬 환경(가상환경)을 만듭니다.
# 1. 가상환경 생성 (.venv 폴더에 독립된 파이썬 환경 생성)
# python -m venv .venv
# 2. 가상환경 활성화
# Windows (PowerShell): .venv\Scripts\Activate.ps1
# Windows (cmd): .venv\Scriptsctivate.bat
# macOS / Linux: source .venv/bin/activate
# 활성화 후 터미널 프롬프트 변화:
# (일반) C:\myproject>
# (활성화) (.venv) C:\myproject>
# 3. 패키지 설치 (이제 전역이 아닌 가상환경에 설치됨)
# pip install requests pandas
# 4. 의존성 목록 저장 (다른 컴퓨터에서 동일 환경 재현 가능)
# pip freeze > requirements.txt
# requirements.txt 예시:
# requests==2.31.0
# pandas==2.1.0
# 5. 다른 컴퓨터에서 동일 환경 재현
# pip install -r requirements.txt
# 6. 가상환경 비활성화
# deactivate
가상환경 폴더(.venv)는 Git에 커밋하지 않습니다. .gitignore에 반드시 .venv/를 추가하세요. 대신 requirements.txt를 커밋해 다른 사람이 동일한 환경을 만들 수 있게 합니다.
현대적인 방법으로는 pyproject.toml을 기반으로 한 poetry나 uv 같은 도구도 있습니다. 이 강좌에서는 표준 라이브러리에 포함된 venv를 사용하지만, 나중에 실무에서는 이런 도구들을 탐색해보세요.
⚠️ 자주 하는 실수
- 가상환경 없이 작업: 전역 파이썬에 모든 패키지를 설치하면 나중에 의존성 충돌로 고생합니다. 프로젝트를 시작할 때 항상 가상환경부터 만드세요.
- python과 python3 혼용: macOS/Linux에서
python은 Python 2를 가리킬 수 있습니다. 항상python3을 사용하거나,which python으로 실제 경로를 확인하세요. - 가상환경 활성화 확인 안 함: 터미널 프롬프트에
(.venv)가 없으면 가상환경이 활성화되지 않은 것입니다. 패키지가 전역에 설치될 수 있으니 주의하세요. - .venv를 Git에 커밋: 가상환경 폴더는 수십 MB 이상이 될 수 있습니다.
.gitignore에 꼭 추가하세요.
📝 정리 및 다음 강의 예고
이번 강의에서 배운 핵심 내용을 정리합니다:
- Python 3를 사용해야 하며, Python 2는 2020년에 지원이 종료됐습니다.
- PATH 환경변수에 파이썬 경로가 등록되어야 터미널에서
python명령이 동작합니다. - REPL(
python명령)은 코드를 즉시 실험하는 가장 빠른 도구입니다. - VS Code + Python 확장 + ruff + black 조합이 현재 권장되는 개발 환경입니다.
- 모든 프로젝트는
python -m venv .venv로 독립된 가상환경에서 시작하세요.
다음 강의: 파이썬 코드가 실행되는 내부 과정을 더 깊이 들여다봅니다. 바이트코드, 파이썬 가상 머신, 그리고 많은 사람들이 파이썬을 느리다고 생각하게 만드는 GIL(전역 인터프리터 락)의 정체를 밝힙니다.
관련 주제
- Python 2 vs 3 차이
- PATH 환경변수
- 터미널과 REPL
- VS Code 개발환경 설정
- 가상환경(venv)
- pip install·requirements.txt
- 개발·프로그래밍
- 개발·프로그래밍 강의
- 파이썬 기초 40강 — 처음 배우는 프로그래밍
- 무료강의
- 무료 온라인 강의
- NUGUNA
- 누구나
