Recent Posts
Recent Comments
Archives
반응형
250x250
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Today
Yesterday

Total
05-12 04:06
관리 메뉴

Hey Tech

[Python] 가상환경의 필요성 본문

SW 개발/Python

[Python] 가상환경의 필요성

Tony Park 2022. 2. 26. 12:23
728x90
반응형

오늘은 파이썬 가상환경의 필요성에 대해 알아봅니다.

개요

가상 환경은 프로젝트마다 격리된 환경(즉, 가상 환경)을 생성함으로써 프로젝트별로 패키지를 관리하기 위함입니다.
파이썬을 입문하기로 마음 먹으셨다면 지금부터라도 가상 환경 사용을 권장해 드립니다.

파이썬의 패키지 관리 특징

파이썬은 같은 인터프리터 버전끼리 같은 패키지를 공유합니다. 예를 들어, 가상 환경을 사용하지 않는 상황에서 A 프로젝트, B 프로젝트에서 Python 3.7.4를 사용하고 가정하겠습니다. 그럼 A 프로젝트에서 설치한 패키지를 B 프로젝트에서 따로 설치할 필요 없이 사용할 수 있습니다. 프로젝트마다 패키지를 매번 설치하지 않아도 되니 파이썬을 입문하신 분들에게는 매우 편리하게 느껴지실 겁니다.
하지만, 프로젝트마다 다른 버전의 패키지를 사용해야 한다면 치명적인 문제를 야기합니다. 아래 그림과 함께 살펴보겠습니다. A 프로젝트에서 pandas 1.4.0 버전을 설치해 사용하고 있었습니다. 그럼 Python 3.7.4를 사용하는 모든 프로젝트에서 pandas 패키지는 1.4.0 버전으로 설치됩니다.

# Project A pip3 install pandas==1.4.0 # Project B pip3 install pandas==1.4.1

그런데 B 프로젝트에서 상위 버전을 사용하기 위해 pandas 1.4.1을 설치했다면 어떻게 될까요? 이제 파이썬 3.7.4 버전의 모든 프로젝트는 pandas 패키지 버전이 1.4.1이 되겠죠. 이 상태에서 A 프로젝트를 진행하면 에러가 발생할 수 있습니다. 이러한 문제를 방지하기 위해 가상 환경을 사용하는 것이죠.

가상환경 사용 전후의 프로젝트별 패키지 버전관리 예시

가상 환경을 사용하면 어떤 변화가 있을까요? 위 그림 우측의 경우입니다. 같은 인터프리터 버전을(Python 3.7.4) 사용하더라도 프로젝트별로 격리된 환경을 사용하기 때문에 패키지를 프로젝트별로 관리할 수 있습니다. 이처럼 가상 환경을 사용하면 프로젝트별로 안정적으로 패키지 버전을 관리할 수 있습니다.


오늘은 파이썬에서 가상 환경을 사용하는 이유에 대해 알아봤습니다.
포스팅 내용에 오류가 있다면 아래에 👇👇👇 댓글 남겨주시면 감사드리겠습니다.
고맙습니다 :)

728x90
반응형
Comments