파이썬 프로젝트에서 가상환경을 만드는 것은 필수는 아니지만 강력히 권장되는 관례이다.
1. 의존성 관리
각 프로젝트마다 필요한 패키지와 라이브러리가 다를 수 있으므로 프로젝트마다 독립적인 환경을 만들어 서로 다른 프로젝트의 패키지 충돌방지
2. 프로젝트 재현성
특정 버전의 라이브러리를 설치하여 프로젝트가 특정 환경에서 정확하게 작동하도록 할 수 있어서 나중에 프로젝트를 재현하거나 배포할 때 도움이 됨
3. 시스템 전역 환경 보호
가상환경을 사용하지 않으면 시스템 전역에 설치하게 되는데, 이는 다른 프로젝트나 시스템의 다른 응용 프로그램과 충돌을 일으킬 수 있기 때문에 가상환경을 사용하여 이러한 문제를 피할 수 있음
4. 편리한 관리
'pip' 과 같은 패키지 관리 도구와 가상환경 도구('venv', 'virtualenv') 는 프로젝트의 패키지 설치 및 관리를 편하게 해줌
# 가상환경 생성
python -m venv {가상환경명}
# 가상환경 활성화: Windows
python -m venv {가상환경명}
# 가상환경 활성화: macOS/Linux
source {가상환경명}/bin/activate
# 가상환경이 활성화된 상태에서 패키지를 설치하면 해당 가상환경 내에 패키지가 설치됨
pip install package_name
# 가상환경 비활성화
deactivate
아나콘다(Anaconda) 는 파이썬 및 R 프로그래밍 언어용 데이터 과학 플랫폼으로 가상환경 관리 도구로도 많이 사용됨
특히 데이터 과학 및 머신 러닝 프로젝트에서는 아나콘다를 사용하는 것이 매우 일반적
아나콘다는 기본적으로 가상환경 관리 도구인 conda를 포함하고 있으며 이는 파이썬뿐만 아니라 다양한 패키지와 의존성을 쉽게 관리할 수 있게 해줌
아나콘다의 장점
간편한 설치 및 관리: 다양한 데이터 과학 도구와 라이브러리를 포함하고있어 초기 설정이 간편
환경 관리: 여러 프로젝트의 의존성을 쉽게 관리할 수 있음
다양한 패키지 지원: 파이썬 외에도 다른 언어와 패키지를 지원
데이터 과학 도구 포함: Juputer Notebook, RStudio 등 데이터 과학에 필요한 도구들이 포함되어 있어 편리함
아나콘다 설치
주의사항
아나콘다는 데이터 과학 및 머신 러닝 프로젝트에 적합하지만 일반적인 파이썬 개발 프로젝트에서는 venv나 virtualenv와 같은 경량 도구를 사용하는 것이 좋은 선택이 될 수 있음
프로젝트 성격과 요구에 따라 적절한 가상 환경 도구를 선택하면 됨
아나콘다는 기본 설치 크기가 크고 많은 패키지를 포함하고 있어서 초기 설치 시간이 오래 걸릴 수 있지만 이를 통해 다양한 패키지를 쉽게사용할 수 있는 장점도 있음