AI를 위한 Python 기초

AI/ML 학습을 위한 Python 프로그래밍 기초 코스입니다. NumPy, Pandas, Matplotlib 등 핵심 라이브러리를 마스터합니다.

Python,AI,Data Science초급
15시간
15개 항목
학습 진행률0 / 15 (0%)

학습 항목

1. Python,Setup
초급
Python 개발 환경 설정 완벽 가이드
퀴즈튜토리얼
2. Python,Basics
초급
Python 기본 문법 복습 완벽 가이드
퀴즈튜토리얼
3. Python,NumPy
초급
NumPy 기초: 배열과 연산 완벽 가이드
퀴즈튜토리얼
4. Python,NumPy
초급
NumPy 심화: 행렬 연산 완벽 가이드
퀴즈튜토리얼
5. Python,Pandas
초급
Pandas 기초 DataFrame 다루기 완벽 가이드
퀴즈튜토리얼
6. Python,Pandas
초급
Pandas 심화 데이터 전처리 완벽 가이드
퀴즈튜토리얼
7. Python,Pandas
초급
Pandas 심화: 그룹화와 병합 완벽 가이드
퀴즈튜토리얼
8. Python,Matplotlib
초급
Matplotlib 기초 그래프 그리기 완벽 가이드
퀴즈튜토리얼
9. Python,Matplotlib
초급
Matplotlib 심화 서브플롯과 스타일 완벽 가이드
퀴즈튜토리얼
10. Python,Seaborn
초급
Seaborn으로 통계 시각화 완벽 가이드
퀴즈튜토리얼
11. Python,Functional
초급
Python 함수형 프로그래밍 완벽 가이드
퀴즈튜토리얼
12. Python,OOP
초급
Python 클래스와 객체지향 프로그래밍 완벽 가이드
퀴즈튜토리얼
13. Python,IO
초급
파일 입출력과 데이터 포맷 완벽 가이드
퀴즈튜토리얼
14. Python,Jupyter
초급
Jupyter Notebook 활용법 완벽 가이드
퀴즈튜토리얼
15. Python,Project
초급
실전 데이터 분석 미니 프로젝트
퀴즈튜토리얼
1 / 15
🤖

본 콘텐츠의 이미지 및 내용은 AI로 생성되었습니다.

이미지 로딩 중...

Python 개발 환경 설정 완벽 가이드 - 슬라이드 1/7
상세 보기

Python 개발 환경 설정 완벽 가이드

Python 프로그래밍을 시작하기 위한 개발 환경 설정 방법을 단계별로 안내합니다. 설치부터 패키지 관리까지, 초보자도 쉽게 따라할 수 있도록 실무 중심으로 설명합니다.


목차

  1. Python_설치
  2. 가상환경_생성
  3. VS_Code_PyCharm_설정
  4. Jupyter_Notebook_설치
  5. pip_패키지_관리
  6. requirements_txt_작성법

1. Python 설치

신입 개발자 김개발 씨가 첫 출근을 했습니다. 팀장님이 "오늘은 개발 환경부터 세팅해보세요"라고 말씀하셨는데, 막상 컴퓨터 앞에 앉으니 어디서부터 시작해야 할지 막막합니다.

Python을 설치해야 한다는 건 알겠는데, 운영체제마다 방법이 다르다니 걱정이 앞섭니다.

Python 설치는 개발 여정의 첫 관문입니다. 마치 요리를 시작하기 전에 주방을 갖추는 것과 같습니다.

운영체제별로 설치 방법이 조금씩 다르지만, 한 번 익혀두면 어렵지 않습니다. 올바르게 설치해야 이후의 모든 개발 과정이 순탄해집니다.

다음 코드를 살펴봅시다.

# Windows - 공식 사이트에서 설치 후 확인
python --version
# Python 3.12.0

# macOS - Homebrew 사용
brew install python3
python3 --version

# Linux (Ubuntu/Debian)
sudo apt update
sudo apt install python3 python3-pip
python3 --version

# 설치 경로 확인
which python3
# /usr/bin/python3 또는 /usr/local/bin/python3

김개발 씨는 입사 첫날, 설레는 마음으로 자리에 앉았습니다. 모니터에는 아무것도 설치되지 않은 깨끗한 운영체제가 기다리고 있었습니다.

옆자리 선배 박시니어 씨가 다가와 말했습니다. "Python부터 설치해볼까요?

생각보다 간단해요." 그렇다면 Python 설치는 어떻게 하는 걸까요? 쉽게 비유하자면, Python 설치는 마치 새 집에 이사 와서 가스와 전기를 개통하는 것과 같습니다.

이 기본 인프라가 갖춰져야 비로소 요리도 하고 불도 켤 수 있듯이, Python이 설치되어야 코드를 실행할 수 있습니다. Windows 사용자라면 python.org에 접속하여 Downloads 메뉴를 클릭합니다.

자동으로 운영체제를 감지하여 적합한 버전을 보여줍니다. 설치 파일을 다운로드한 후 실행하면 되는데, 여기서 중요한 것이 있습니다.

설치 화면 하단의 Add Python to PATH 체크박스를 반드시 선택해야 합니다. 이것을 놓치면 나중에 터미널에서 python 명령어를 인식하지 못하는 문제가 발생합니다.

macOS 사용자에게는 Homebrew라는 좋은 도구가 있습니다. Homebrew는 macOS의 패키지 관리자로, 마치 앱스토어처럼 다양한 개발 도구를 쉽게 설치할 수 있게 해줍니다.

터미널을 열고 brew install python3 명령어 한 줄이면 설치가 완료됩니다. Linux 사용자, 특히 Ubuntu나 Debian 계열을 사용한다면 apt 명령어를 사용합니다.

sudo apt update로 패키지 목록을 최신화한 후, sudo apt install python3 python3-pip 명령어로 Python과 pip를 함께 설치합니다. 설치가 완료되었다면 제대로 되었는지 확인해봐야 합니다.

터미널을 열고 python --version 또는 python3 --version을 입력해보세요. Python 3.12.0과 같이 버전 정보가 출력된다면 성공입니다.

박시니어 씨가 덧붙였습니다. "버전이 안 나오면 터미널을 껐다 켜보세요.

환경 변수가 적용되려면 터미널 재시작이 필요할 때가 있어요." 김개발 씨는 자신의 Windows 노트북에서 설치를 완료하고 python --version을 입력했습니다. Python 3.12.0이라는 글자가 나타나자 뿌듯한 미소가 지어졌습니다.

첫 번째 관문을 무사히 통과한 것입니다.

실전 팁

💡 - Windows 설치 시 반드시 Add Python to PATH 옵션을 체크하세요

  • 여러 버전의 Python이 필요하다면 pyenv 사용을 고려해보세요
  • 설치 후 터미널을 재시작해야 환경 변수가 적용됩니다

2. 가상환경 생성

김개발 씨가 첫 번째 프로젝트에 투입되었습니다. 신나게 라이브러리를 설치하던 중, 선배가 급하게 다가와 물었습니다.

"잠깐, 가상환경 만들고 설치하는 거 맞죠?" 김개발 씨는 멈칫했습니다. 가상환경이라니, 그게 뭔가요?

가상환경은 프로젝트마다 독립된 Python 환경을 만들어주는 기능입니다. 마치 아파트의 각 호실처럼 프로젝트별로 격리된 공간을 제공합니다.

한 프로젝트에서 설치한 라이브러리가 다른 프로젝트에 영향을 주지 않아 버전 충돌 문제를 예방할 수 있습니다.

다음 코드를 살펴봅시다.

# venv로 가상환경 생성 (Python 내장)
python -m venv myproject_env

# 가상환경 활성화
# Windows
myproject_env\Scripts\activate
# macOS/Linux
source myproject_env/bin/activate

# 활성화되면 프롬프트가 변경됨
# (myproject_env) $

# 가상환경 비활성화
deactivate

# conda로 가상환경 생성 (Anaconda 사용 시)
conda create -n myproject python=3.12
conda activate myproject

박시니어 씨는 김개발 씨를 회의실로 데려가 차분히 설명하기 시작했습니다. "가상환경을 이해하려면 먼저 왜 필요한지부터 알아야 해요." 가상환경이 없던 시절에는 어떤 일이 벌어졌을까요?

A 프로젝트에서는 Django 2.0을 사용하고, B 프로젝트에서는 Django 4.0을 사용한다고 가정해봅시다. 가상환경 없이 시스템에 직접 설치하면 둘 중 하나만 존재할 수 있습니다.

A 프로젝트를 작업하다가 B 프로젝트로 넘어가면 Django를 업그레이드해야 하고, 다시 A로 돌아가면 다운그레이드해야 합니다. 이런 식으로는 제대로 된 개발이 불가능합니다.

가상환경은 마치 호텔의 객실과 같습니다. 각 방에는 독립된 시설이 갖춰져 있어서, 101호 투숙객이 무엇을 해도 102호에는 영향을 주지 않습니다.

프로젝트마다 가상환경을 만들면 각각의 라이브러리 버전을 독립적으로 관리할 수 있습니다. Python에는 venv라는 가상환경 도구가 기본으로 내장되어 있습니다.

python -m venv 환경이름 명령어로 간단히 생성할 수 있습니다. 생성된 가상환경은 활성화해야 사용할 수 있는데, Windows에서는 환경이름\Scripts\activate, macOS와 Linux에서는 source 환경이름/bin/activate 명령어를 사용합니다.

가상환경이 활성화되면 터미널 프롬프트 앞에 괄호로 환경 이름이 표시됩니다. 이제 이 상태에서 설치하는 모든 패키지는 해당 가상환경에만 설치됩니다.

작업을 마치고 다른 프로젝트로 이동할 때는 deactivate 명령어로 비활성화하면 됩니다. 데이터 과학이나 머신러닝 분야에서는 Anaconda를 많이 사용합니다.

Anaconda에 포함된 conda는 venv보다 강력한 가상환경 관리 기능을 제공합니다. conda create -n 환경이름 python=3.12처럼 Python 버전까지 지정할 수 있습니다.

박시니어 씨가 말했습니다. "실무에서는 프로젝트 폴더 안에 가상환경을 만드는 것이 일반적이에요.

보통 venv나 .venv라는 이름을 많이 써요." 김개발 씨는 고개를 끄덕이며 자신의 프로젝트 폴더에서 python -m venv venv 명령어를 실행했습니다. 터미널 프롬프트에 (venv)가 나타나는 것을 보고, 이제 안전하게 라이브러리를 설치할 수 있다는 것을 알게 되었습니다.

실전 팁

💡 - 가상환경 폴더는 .gitignore에 추가하여 버전 관리에서 제외하세요

  • 프로젝트당 하나의 가상환경을 원칙으로 삼으세요
  • VS Code는 가상환경을 자동 감지하여 인터프리터로 설정해줍니다

3. VS Code PyCharm 설정

개발 환경의 기초가 갖춰졌습니다. 이제 실제로 코드를 작성할 도구가 필요합니다.

김개발 씨는 선배들에게 물었습니다. "코드 에디터는 뭘 써야 하나요?" 돌아온 대답은 두 가지였습니다.

VS Code와 PyCharm. 어떤 것을 선택해야 할까요?

VS Code는 가볍고 빠른 코드 에디터로 확장 프로그램을 통해 다양한 언어를 지원합니다. PyCharm은 Python 전용 통합 개발 환경으로 강력한 기능을 기본 제공합니다.

마치 날렵한 스포츠카와 튼튼한 SUV처럼 각자의 장점이 있어 상황에 맞게 선택하면 됩니다.

다음 코드를 살펴봅시다.

# VS Code 설정 (settings.json)
{
    "python.defaultInterpreterPath": "./venv/bin/python",
    "python.linting.enabled": true,
    "python.linting.pylintEnabled": true,
    "python.formatting.provider": "black",
    "editor.formatOnSave": true,
    "python.analysis.typeCheckingMode": "basic"
}

# 필수 VS Code 확장 프로그램
# - Python (Microsoft)
# - Pylance
# - Python Debugger

# PyCharm 인터프리터 설정
# File > Settings > Project > Python Interpreter
# Add Interpreter > Existing > venv/bin/python 선택

박시니어 씨는 두 도구의 차이점을 설명하기 시작했습니다. "둘 다 훌륭한 도구예요.

선택은 취향과 상황에 따라 달라져요." VS Code는 Microsoft에서 만든 무료 코드 에디터입니다. 가볍고 빠르며, 마치 레고 블록처럼 확장 프로그램을 조합하여 원하는 개발 환경을 구축할 수 있습니다.

Python뿐만 아니라 JavaScript, Go, Rust 등 다양한 언어를 오가며 작업하는 개발자에게 적합합니다. VS Code에서 Python을 사용하려면 먼저 확장 프로그램을 설치해야 합니다.

왼쪽 사이드바의 확장 아이콘을 클릭하고 Python을 검색합니다. Microsoft에서 만든 공식 확장 프로그램을 설치하면 Pylance와 Python Debugger도 함께 설치됩니다.

설치 후 가장 중요한 것은 인터프리터 설정입니다. Ctrl+Shift+P를 눌러 명령 팔레트를 열고 Python: Select Interpreter를 검색합니다.

앞서 만든 가상환경의 Python을 선택하면 해당 환경의 패키지를 인식하게 됩니다. PyCharm은 JetBrains에서 만든 Python 전용 IDE입니다.

무료 Community 버전과 유료 Professional 버전이 있는데, 웹 개발이 아니라면 Community 버전으로 충분합니다. PyCharm은 설치 직후부터 강력한 코드 분석, 리팩토링, 디버깅 기능을 제공합니다.

PyCharm에서 프로젝트를 열면 자동으로 가상환경을 감지하는 경우도 있지만, 직접 설정하는 것이 확실합니다. File 메뉴에서 Settings를 열고, Project 섹션의 Python Interpreter를 선택합니다.

톱니바퀴 아이콘을 클릭하여 Add Interpreter를 선택하고, 기존 가상환경의 Python 경로를 지정합니다. 박시니어 씨가 조언했습니다.

"처음 시작한다면 VS Code를 추천해요. 가볍고 배우기 쉽거든요.

나중에 Python에 집중하게 되면 PyCharm을 써보는 것도 좋아요." 김개발 씨는 VS Code를 선택하고, Python 확장 프로그램을 설치했습니다. 가상환경을 인터프리터로 설정하자 에디터 하단에 Python 3.12.0이라는 표시가 나타났습니다.

이제 본격적인 코딩을 시작할 준비가 되었습니다.

실전 팁

💡 - VS Code에서 Black 포매터를 설정하면 저장 시 자동으로 코드 스타일이 정리됩니다

  • PyCharm은 메모리를 많이 사용하므로 8GB 이상의 RAM을 권장합니다
  • 두 도구 모두 가상환경을 제대로 인식하는지 터미널에서 which python으로 확인하세요

4. Jupyter Notebook 설치

어느 날 데이터 분석 팀과 협업하게 된 김개발 씨는 낯선 파일 형식을 발견했습니다. .ipynb라는 확장자의 파일이었는데, 코드와 결과, 설명이 한 문서에 섞여 있었습니다.

"이게 Jupyter Notebook이에요"라고 분석가가 설명했습니다. 신기한 세계로의 초대장이었습니다.

Jupyter Notebook은 코드, 실행 결과, 마크다운 텍스트를 한 문서에 담을 수 있는 대화형 개발 환경입니다. 마치 실험 노트처럼 과정과 결과를 함께 기록할 수 있어 데이터 분석과 교육에 널리 사용됩니다.

코드를 셀 단위로 실행하며 즉시 결과를 확인할 수 있습니다.

다음 코드를 살펴봅시다.

# Jupyter Notebook 설치
pip install notebook

# Jupyter Notebook 실행
jupyter notebook
# 브라우저에서 http://localhost:8888 자동 열림

# JupyterLab 설치 (더 현대적인 인터페이스)
pip install jupyterlab

# JupyterLab 실행
jupyter lab

# VS Code에서 Jupyter 사용하기
# 1. Jupyter 확장 프로그램 설치
# 2. .ipynb 파일 생성 또는 열기
# 3. 커널 선택 (가상환경의 Python)

# 셀 실행 단축키
# Shift + Enter: 현재 셀 실행 후 다음 셀로 이동
# Ctrl + Enter: 현재 셀만 실행

Jupyter Notebook은 2014년에 IPython Notebook에서 발전한 도구입니다. 이름의 유래가 재미있는데, Julia, Python, R 세 언어의 첫 글자를 합친 것입니다.

지금은 40개 이상의 프로그래밍 언어를 지원합니다. 설치는 매우 간단합니다.

가상환경을 활성화한 상태에서 pip install notebook 명령어를 실행하면 됩니다. 설치가 완료되면 jupyter notebook 명령어로 실행합니다.

잠시 후 기본 웹 브라우저가 열리며 Jupyter 대시보드가 나타납니다. 새 노트북을 만들려면 오른쪽 상단의 New 버튼을 클릭하고 Python 3을 선택합니다.

빈 노트북이 열리면 셀이라는 칸에 코드를 입력할 수 있습니다. Shift+Enter를 누르면 해당 셀의 코드가 실행되고 결과가 바로 아래에 표시됩니다.

일반 스크립트와 다른 점은 코드를 셀 단위로 나누어 실행할 수 있다는 것입니다. 마치 대화하듯이 한 줄씩 실행하며 결과를 확인할 수 있습니다.

데이터 분석에서 이 기능이 특히 유용합니다. 데이터를 불러오고, 전처리하고, 시각화하는 각 단계를 독립적으로 실행하며 중간 결과를 확인할 수 있기 때문입니다.

최근에는 JupyterLab이라는 차세대 인터페이스도 인기를 얻고 있습니다. pip install jupyterlab으로 설치하고 jupyter lab으로 실행합니다.

여러 노트북을 탭으로 열고, 파일 탐색기와 터미널을 함께 사용할 수 있는 더 현대적인 환경을 제공합니다. VS Code 사용자라면 별도의 브라우저 없이도 Jupyter를 사용할 수 있습니다.

Jupyter 확장 프로그램을 설치하면 .ipynb 파일을 VS Code 내에서 직접 편집하고 실행할 수 있습니다. 익숙한 에디터 안에서 노트북을 다룰 수 있어 편리합니다.

김개발 씨는 Jupyter Notebook에서 간단한 코드를 실행해보았습니다. print("Hello, Jupyter!")를 입력하고 Shift+Enter를 눌렀더니 바로 아래에 결과가 나타났습니다.

"신기하네요, 마치 대화하는 것 같아요"라고 감탄했습니다.

실전 팁

💡 - 노트북 파일은 용량이 커질 수 있으니 출력 결과를 정리한 후 커밋하세요

  • 셀 타입을 Markdown으로 바꾸면 문서 형식의 설명을 추가할 수 있습니다
  • nbconvert를 사용하면 노트북을 HTML, PDF 등으로 변환할 수 있습니다

5. pip 패키지 관리

김개발 씨가 오픈소스 라이브러리를 사용하려고 합니다. 선배가 "pip install 하면 돼요"라고 말했는데, pip가 정확히 뭔지, 어떻게 사용하는 건지 궁금해졌습니다.

패키지 관리의 세계로 들어가 봅시다.

pip는 Python의 공식 패키지 관리 도구입니다. 마치 스마트폰의 앱스토어처럼 전 세계 개발자들이 만든 라이브러리를 검색하고 설치할 수 있습니다.

PyPI라는 저장소에 50만 개 이상의 패키지가 등록되어 있어, 필요한 기능을 직접 구현하지 않고도 가져다 쓸 수 있습니다.

다음 코드를 살펴봅시다.

# 패키지 설치
pip install requests

# 특정 버전 설치
pip install requests==2.31.0

# 버전 범위 지정
pip install "requests>=2.28.0,<3.0.0"

# 패키지 업그레이드
pip install --upgrade requests

# 패키지 삭제
pip uninstall requests

# 설치된 패키지 목록 확인
pip list

# 패키지 정보 확인
pip show requests

# 오래된 패키지 확인
pip list --outdated

pip는 Pip Installs Packages의 약자입니다. 재귀적 약자라서 조금 재치 있죠.

Python 3.4 이후 버전에는 기본으로 포함되어 있어 별도 설치가 필요 없습니다. pip의 기본 사용법은 단순합니다.

pip install 패키지명 형식으로 원하는 패키지를 설치합니다. 예를 들어 HTTP 요청을 보내는 라이브러리인 requests를 설치하려면 pip install requests를 실행합니다.

pip는 PyPI라는 공식 저장소에서 패키지를 다운로드하여 설치합니다. 하지만 실무에서는 단순히 최신 버전을 설치하는 것만으로는 부족합니다.

프로젝트마다 특정 버전의 패키지가 필요한 경우가 많습니다. 이럴 때는 버전 지정이 필요합니다.

pip install requests==2.31.0처럼 등호 두 개를 사용하면 정확히 그 버전만 설치됩니다. 버전 범위를 지정할 수도 있습니다.

pip install "requests>=2.28.0,<3.0.0"은 2.28.0 이상, 3.0.0 미만 버전 중 최신을 설치합니다. 따옴표로 감싸는 이유는 부등호가 쉘에서 특수 문자로 해석되는 것을 방지하기 위함입니다.

이미 설치된 패키지를 최신 버전으로 업그레이드하려면 --upgrade 옵션을 사용합니다. pip install --upgrade requests를 실행하면 최신 버전으로 업데이트됩니다.

반대로 패키지를 삭제하려면 pip uninstall 패키지명을 사용합니다. 현재 환경에 어떤 패키지가 설치되어 있는지 확인하려면 pip list 명령어를 사용합니다.

설치된 모든 패키지와 버전 정보가 출력됩니다. 특정 패키지의 상세 정보를 보려면 pip show 패키지명을 사용합니다.

설치 경로, 의존성 정보 등을 확인할 수 있습니다. 박시니어 씨가 주의를 주었습니다.

"가상환경을 활성화하지 않은 상태에서 pip install을 실행하면 시스템 Python에 설치되니 조심하세요. 항상 가상환경이 활성화된 상태인지 확인하는 습관을 들이세요."

실전 팁

💡 - pip install 전에 가상환경이 활성화되어 있는지 확인하세요

  • pip cache purge로 캐시를 정리하면 디스크 공간을 절약할 수 있습니다
  • 신뢰할 수 없는 패키지는 설치 전에 PyPI 페이지에서 다운로드 수와 최근 업데이트를 확인하세요

6. requirements txt 작성법

김개발 씨가 열심히 만든 프로젝트를 동료에게 공유했습니다. 그런데 동료의 컴퓨터에서는 에러가 발생했습니다.

"requests 모듈이 없대요"라고 동료가 말했습니다. 필요한 패키지 목록을 어떻게 공유해야 할까요?

바로 requirements.txt가 그 해답입니다.

requirements.txt는 프로젝트에 필요한 패키지 목록을 정리한 파일입니다. 마치 요리 레시피의 재료 목록처럼, 이 프로젝트를 실행하려면 어떤 패키지가 필요한지 명시합니다.

다른 개발자가 이 파일을 받아 한 번의 명령어로 모든 의존성을 설치할 수 있습니다.

다음 코드를 살펴봅시다.

# 현재 설치된 패키지를 requirements.txt로 저장
pip freeze > requirements.txt

# requirements.txt 내용 예시
# requirements.txt
requests==2.31.0
numpy==1.26.0
pandas==2.1.0
flask>=2.0.0,<3.0.0

# requirements.txt에서 패키지 설치
pip install -r requirements.txt

# 개발용 의존성 분리 (requirements-dev.txt)
# requirements-dev.txt
-r requirements.txt
pytest==7.4.0
black==23.9.0
mypy==1.5.0

# 개발용 의존성 설치
pip install -r requirements-dev.txt

팀 프로젝트에서 가장 흔히 발생하는 문제 중 하나가 "내 컴퓨터에서는 되는데"입니다. 개발 환경이 다르면 같은 코드라도 다르게 동작할 수 있습니다.

requirements.txt는 이 문제를 해결하는 표준적인 방법입니다. 가장 간단한 방법은 pip freeze 명령어를 사용하는 것입니다.

이 명령어는 현재 가상환경에 설치된 모든 패키지와 버전을 출력합니다. 이 출력을 파일로 저장하면 requirements.txt가 됩니다.

pip freeze > requirements.txt처럼 리다이렉션을 사용하면 됩니다. 하지만 pip freeze의 출력을 그대로 사용하면 불필요한 패키지까지 포함될 수 있습니다.

예를 들어 requests를 설치하면 그 의존성인 urllib3, charset-normalizer 등도 함께 설치됩니다. 이런 하위 의존성까지 모두 명시할 필요는 없습니다.

직접 사용하는 패키지만 수동으로 정리하는 것이 깔끔합니다. requirements.txt 파일은 한 줄에 하나의 패키지를 작성합니다.

버전을 명시하지 않으면 최신 버전이 설치되지만, 재현성을 위해 버전을 명시하는 것이 좋습니다. requests==2.31.0처럼 정확한 버전을 지정하거나, flask>=2.0.0,<3.0.0처럼 범위를 지정할 수 있습니다.

실무에서는 개발용 의존성을 분리하는 경우가 많습니다. 테스트 도구나 린터는 개발 시에만 필요하고 실제 서비스에는 불필요합니다.

이런 패키지들은 requirements-dev.txt라는 별도 파일에 정리합니다. 파일 상단에 -r requirements.txt를 추가하면 기본 의존성을 포함한다는 의미입니다.

새로운 환경에서 의존성을 설치할 때는 pip install -r requirements.txt 명령어를 사용합니다. pip가 파일을 읽어서 명시된 모든 패키지를 순서대로 설치합니다.

박시니어 씨가 덧붙였습니다. "요즘은 Poetry나 Pipenv 같은 더 현대적인 의존성 관리 도구도 있어요.

하지만 requirements.txt는 여전히 가장 보편적인 방식이고, 대부분의 프로젝트에서 만나게 될 거예요." 김개발 씨는 자신의 프로젝트에서 pip freeze > requirements.txt를 실행했습니다. 생성된 파일을 동료에게 보내며 "이걸로 pip install -r requirements.txt 하면 돼요"라고 말했습니다.

동료의 환경에서도 프로젝트가 정상 동작하는 것을 보며, 협업의 기본기를 하나 더 익혔다는 뿌듯함을 느꼈습니다.

실전 팁

💡 - requirements.txt는 반드시 버전 관리에 포함하세요

  • 정기적으로 pip list --outdated로 업데이트 가능한 패키지를 확인하세요
  • 프로덕션 환경에서는 정확한 버전 지정(==)을 사용하는 것이 안전합니다

이상으로 학습을 마칩니다. 위 내용을 직접 코드로 작성해보면서 익혀보세요!

#Python#개발환경#가상환경#pip#venv#Python,Setup