반응형

 

파이썬 개발의 필수! **가상 환경 (Virtual Environment)** 설정 및 사용법 완벽 가이드 (venv)

파이썬으로 여러 프로젝트를 진행할 때, 프로젝트마다 필요한 **패키지(라이브러리)의 버전**이 달라 충돌이 발생하는 경험을 해보셨을 겁니다. 이 문제를 해결해주는 마법 같은 도구가 바로 **가상 환경 (Virtual Environment)**입니다.

가상 환경은 프로젝트별로 독립된 개발 공간을 만들어 의존성 충돌을 원천적으로 막아줍니다. 오늘은 파이썬 표준 라이브러리인 venv를 사용하여 가상 환경을 만들고 사용하는 방법을 초보자도 따라 할 수 있도록 단계별로 자세히 알아보겠습니다.


1. 가상 환경(Virtual Environment)이 왜 필요한가요?

가상 환경이 없다면, 여러분이 설치하는 모든 패키지들은 시스템 전체의 파이썬 환경에 설치됩니다. 다음과 같은 문제가 발생할 수 있습니다.

  • 의존성 충돌: 프로젝트 A는 Django 3.x를 필요로 하고, 프로젝트 B는 Django 4.x를 필요로 한다면, 시스템 환경에서는 둘 중 하나만 설치할 수 있어 충돌이 발생합니다.
  • 불필요한 패키지 누적: 필요 없는 패키지들이 전역 환경에 계속 쌓여 시스템 환경이 지저분해집니다.
  • 배포의 어려움: 내 컴퓨터에서는 잘 작동하지만, 다른 환경에서는 작동하지 않는 '버전 문제'가 생길 수 있습니다.

가상 환경을 사용하면 각 프로젝트는 자신만의 독립된 패키지 저장소를 갖게 되어, 서로 영향을 주지 않고 안정적으로 개발할 수 있습니다.


2. 파이썬 `venv`를 이용한 가상 환경 설정 3단계

파이썬 3.3 버전 이상부터는 별도의 설치 없이 venv 모듈을 통해 가상 환경을 만들 수 있습니다. 이제부터 터미널(또는 명령 프롬프트)을 열고 따라 해보세요.

1단계: 가상 환경 생성하기

프로젝트 폴더로 이동한 후, 다음 명령어를 실행합니다. env_name 부분은 원하는 이름으로 자유롭게 지정할 수 있습니다. (일반적으로 venv, .venv, env 등을 많이 사용합니다.)

python -m venv env_name

이 명령을 실행하면 현재 폴더 안에 env_name이라는 새로운 폴더가 생기고, 그 안에 독립된 파이썬 실행 파일과 패키지 폴더가 생성됩니다.

2단계: 가상 환경 활성화(Activation)하기

가상 환경을 생성했더라도, 이를 '활성화'해야만 지금부터 설치하는 패키지들이 이 환경 안에 설치됩니다. 운영체제별로 활성화 방법이 다릅니다.

**💻 Windows (명령 프롬프트/PowerShell)**

env_name\Scripts\activate

**🍎 macOS 또는 Linux (Bash/Zsh)**

source env_name/bin/activate

활성화에 성공하면 터미널 프롬프트 앞에 **(env_name)**과 같이 가상 환경 이름이 표시되는 것을 확인할 수 있습니다. 이제 여기서 패키지를 설치하면 이 프로젝트에만 적용됩니다. 예를 들어:

(env_name) pip install requests

3단계: 가상 환경 비활성화(Deactivation)하기

해당 프로젝트 작업이 끝났다면, 다음 명령어로 가상 환경을 빠져나와 시스템 환경으로 돌아갈 수 있습니다. 아주 간단합니다.

deactivate

프롬프트 앞에 표시되던 (env_name) 표시가 사라진 것을 확인하세요. 이제 다시 전역 파이썬 환경으로 돌아왔습니다.


3. 핵심 정리: 가상 환경 사용의 장점

이제 여러분은 **파이썬 가상 환경**을 완벽하게 다룰 수 있게 되었습니다. 가상 환경을 사용함으로써 얻는 이점은 다음과 같습니다:

  1. **안정적인 개발:** 프로젝트 간 간섭이 없어졌으므로 의존성 충돌 걱정 없이 개발에 집중할 수 있습니다.
  2. **깔끔한 관리:** 필요한 패키지만 설치되므로 pip freeze > requirements.txt 명령을 통해 프로젝트의 의존성 목록을 깔끔하게 공유하고 관리할 수 있습니다.
  3. **쉬운 배포:** requirements.txt 파일만 있으면 어디서든 동일한 환경을 쉽게 구축할 수 있습니다.

오늘 배운 `venv` 사용법을 활용하여 더욱 체계적이고 효율적인 파이썬 개발을 시작해 보세요! 🚀

반응형
반응형
ㅇㅇ

파이썬의 정규식 중 간단하고 가장 많이 사용되는 정규식을 말씀드리려고 합니다.

또 한 예제를 통해 re ( regular expression) 사용법도 살펴보시면 좋습니다.

 

 

1. ' . ' → 하나의 문자를 의미합니다.

  • 예를들어 L.VE 라고 한다면 이는 LIVE , LOVE등이 가능할 것 같습니다.
1
2
3
4
5
6
7
8
9
import re
#★★★★★★★★★★          BLOG          ★★★★★★★★★★
= re.compile("L.VE")
= p.match("LOVE")
if m :
    print("해당 {0}은 정규식표현의 글자에 포함할 수 있습니다.".format(m.string))
else :
    print("해당 글자는 매칭되지 않습니다.")
 

2. ' ^ ' → 문자열의 시작을 의미합니다.

  • 예를들어 ^AR 이라고 한다면 이는 ARCHER, ARK, ARRIVE 등이 가능합니다.
1
2
3
4
5
6
7
8
import re
#★★★★★★★★★★          BLOG          ★★★★★★★★★★
= re.compile("^AR")
= p.match("ARK")
if m :
    print("해당 {0}은 AR의 시작부분을 포함하고 있습니다.".format(m.group()))
else :
    print("해당 글자는 매칭되지 않습니다.")

3. ' $ ' → 하나의 문자를 의미합니다.

  • 마찬가지로 예를들어 ER$ 라고한다면 이는 LOSER, WINNER 등이 가능합니다.
1
2
3
4
5
6
7
8
import re
#★★★★★★★★★★          BLOG          ★★★★★★★★★★
= re.compile("ER$")
= p.search("LOSER")
if m :
    print("해당 {0}은 ER의 마지막부분을 포함하고 있습니다.".format(m.group()))
else :
    print("해당 글자는 매칭되지 않습니다.")

 

이와같이 사용이 가능합니다.

import re를 이용한 정규식 사용방법

1. p = re.compile( "원하는 정규식 작성" )

2. m = p.match( "비교할 문자열")

MATCH()는 주어진 문자열이 처음부터 일치하는지 확인을 합니다.

또는

2. m = p.search( "비교할 문자열" )

SEARCH()는 주어진 문자열 중에 일치하는것이 있는지 확인합니다.

 

반응형

'Language > Python' 카테고리의 다른 글

가상 환경 (Virtual Environment)설정 및 사용법  (0) 2025.10.27

+ Recent posts