[PYTHON] requirements.txt 파일 쉽게 만드는 방법: 설치된 패키지 목록 저장

pip freeze 명령어로 현재 설치된 Python Package 목록을 requirements.txt 파일로 쉽게 저장하는 방법을 소개합니다.

Python 프로젝트를 진행하다 보면, 현재 설치된 Package 목록을 다른 환경에서도 똑같이 재현하고 싶을 때가 많습니다. 이럴 때 가장 많이 사용하는 방법이 바로 requirements.txt 파일을 만드는 것입니다. 이번 글에서는 현재 설치된 Package들을 requirements.txt 파일로 저장하는 방법과, 작업 시 유의할 점들을 정리해보았습니다.


requirements.txt란 무엇인가요?

requirements.txt는 Python 프로젝트에서 필요한 Package와 그 Version을 기록해 두는 표준 파일입니다. 이 파일을 통해 다른 개발자나 서버에서도 동일한 환경을 손쉽게 구축할 수 있습니다.


설치된 Package 목록 저장하는 가장 쉬운 방법

1. pip freeze 명령어 사용

가장 기본적이고 널리 쓰이는 방법은 pip freeze 명령어를 활용하는 것입니다. 아래와 같이 터미널(명령 프롬프트)에서 입력하면 됩니다.

pip freeze > requirements.txt

이 명령은 현재 환경에 설치된 모든 패키지와 버전을 requirements.txt 파일에 한 줄씩 기록합니다. 나중에 이 파일을 이용해 동일한 환경을 쉽게 복원할 수 있습니다.


2. 가상환경에서 실행하면 더 깔끔해요

불필요한 패키지가 포함되는 것을 막으려면, 가상환경(venv, conda 등)을 먼저 만들고 필요한 패키지만 설치한 뒤 위 명령어를 실행하는 것이 좋습니다. 이렇게 하면 프로젝트에 꼭 필요한 패키지만 포함된 requirements.txt 파일을 만들 수 있습니다.


3. requirements.txt로 패키지 설치하기

requirements.txt 파일이 준비되었다면, 다른 환경에서 아래 명령어로 손쉽게 패키지를 설치할 수 있습니다.

pip install -r requirements.txt

추가 팁

  • pip freeze는 Package명과 Version을 “Package==Version” 형식으로 저장합니다.

  • 일부 Package는 다운로드 주소가 포함될 수 있으니, 필요에 따라 파일을 확인해보세요.

  • pip list 명령어도 있지만, 이 방법은 사람이 보기엔 좋으나 requirements.txt로 바로 사용하기엔 적합하지 않습니다.


마무리

requirements.txt 파일은 Python 프로젝트의 협업과 배포, 환경 재현에 꼭 필요한 도구입니다. 위 방법을 활용해 프로젝트 관리에 도움을 받아보세요!

Happy GoSu ~

WooGong ))*

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

[Python] Python Virtual Environment Setting on Mac

MAC OS 에 파이썬 가상환경을 구성하는 방법

Python Virtual Environment Setting on Mac

MAC OS 에 파이썬 가상환경을 구성하는 방법

1. Homebrew 설치

먼저 Homebrew가 설치되어 있어야 합니다. Homebrew는 macOS에서 소프트웨어 패키지를 관리하기 위한 훌륭한 도구입니다. Homebrew가 설치되어 있지 않다면, 터미널을 열고 아래 명령어를 입력하여 Homebrew를 설치합니다:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

2. pyenv와 pyenv-virtualenv 설치

Homebrew를 사용하여 pyenv와 pyenv-virtualenv를 설치합니다. 터미널에서 다음 명령어를 실행합니다:

brew install pyenv
brew install pyenv-virtualenv

3. 쉘 환경 설정

pyenv와 pyenv-virtualenv를 사용할 수 있도록 쉘 환경을 설정합니다. 사용하는 쉘에 따라 설정 방법이 다릅니다. 대부분의 경우, ~/.bashrc, ~/.bash_profile, 또는 ~/.zshrc 파일을 수정합니다.

Bash를 사용하는 경우, ~/.bash_profile에 다음 내용을 추가합니다:

export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

Zsh를 사용하는 경우, ~/.zshrc에 다음 내용을 추가합니다:

export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

파일을 수정한 후, 쉘 설정을 다시 로드합니다:

source ~/.bash_profile  # Bash 사용자
source ~/.zshrc         # Zsh 사용자

4. Python 설치 가능 버전 확인

pyenv install --list
pyenv install –list

pyenv를 사용하여 설치할 수 있는 Python 버전들을 확인합니다. :

pyenv install --list

5. Python 버전 설치

pyenv install 3.12.3
pyenv install 3.12.3

pyenv를 사용하여 원하는 Python 버전을 설치합니다. 예를 들어 Python 3.12.3을 설치하려면 다음 명령어를 실행합니다:

pyenv install 3.12.3
pyenv versions
pyenv versions

설치된 Python 버전을 확인하려면 다음 명령어를 사용합니다:

pyenv versions

6. 가상환경 생성

pyenv virtualenv 3.12.3 myPython_test_env
pyenv virtualenv 3.12.3 myPython_test_env

pyenv-virtualenv를 사용하여 가상환경을 생성합니다. 예를 들어, myPython_test_env라는 이름의 가상환경을 Python 3.12.3 버전으로 생성하려면 다음 명령어를 실행합니다:

pyenv virtualenv 3.12.3 myPython_test_env

7. 가상환경 생성

Check environment
Check environment

생성 후 가상환경들을 확인해 봅니다.

8. 가상환경 활성화 및 비활성화

생성한 가상환경을 활성화하려면 다음 명령어를 실행합니다:

pyenv activate myPython_test_env

가상환경을 비활성화하려면 다음 명령어를 실행합니다:

pyenv deactivate

9. 가상환경 제거

더 이상 필요하지 않은 가상환경을 제거하려면 다음 명령어를 실행합니다:

pyenv virtualenv-delete myPython_test_env

이제 pyenv와 pyenv-virtualenv를 사용하여 Python 가상환경을 구성하는 방법을 살펴보았습니다.
이를 통해 프로젝트마다 독립적인 Python 환경을 설정하고 관리할 수 있겠죠?!

 

모두 행복한 고수되십시오.

WooGong ))*
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

출처: https://www.jumptovb.net/entry/Python-Python-Virtual-Environment-Setting-on-Mac [Jump To VB.NET:티스토리]

[Python] Python Virtual Environment Setting with pyenv-win on Window

Python Virtual Environment Setting with pyenv-win on Window
Windows 환경에서 pyenv-win 을 사용하여 Python 가상환경 구성

Windows 환경에서 pyenv-win 을 사용한 파이썬 가상환경을 구성하는 방법에 대한 기록을 남깁니다.

Windows 환경에서 pyenv-win을 사용하여 Python 가상환경을 관리하는 방법에 대한 블로그를 작성하기 위해, 다음 단계를 따라 진행할 수 있습니다. 이 블로그는 설치부터 가상환경 관리까지 모든 과정을 포함합니다.


Windows 환경에서 pyenv-win 을 사용하여 Python 가상환경 구성하기

Python은 다양한 프로젝트에서 사용되며, 각 프로젝트마다 다른 버전의 Python을 요구할 수 있습니다. 이를 효과적으로 관리하기 위해 pyenv-win을 사용하면 여러 버전의 Python을 설치하고 간편하게 전환할 수 있습니다. 이 블로그에서는 Windows 환경에서 pyenv-win을 설치하고 사용하는 방법을 단계별로 안내하겠습니다.

1. pyenv-win 설치

1.1. pyenv-win 다운로드

먼저, pyenv-win을 GitHub에서 다운로드합니다. Git을 설치한 상태여야 합니다.

 

git clone https://github.com/pyenv-win/pyenv-win.git %USERPROFILE%\.pyenv
git clone https://github.com/pyenv/pyenv-virtualenv.git %USERPROFILE%\.pyenv\plugins\pyenv-virtualenv

특정위치에 가상환경을 몰아 놓으려면 %USERPROFILE%.pyenv 를 수정하면 되겠죠?

실행시키면 아래와 같은 폴더가 생성됩니다. (저의 Profile 은 JH.Woo 입니다.)

1.2. 환경 변수 설정

pyenv-win의 실행 파일이 시스템의 경로에 포함되도록 환경 변수를 설정합니다.

 

setx PATH "%USERPROFILE%\.pyenv\pyenv-win\bin;%USERPROFILE%\.pyenv\pyenv-win\shims;%USERPROFILE%\.pyenv\plugins\pyenv-virtualenv\bin;%USERPROFILE%\.pyenv\plugins\pyenv-virtualenv\shims;%PATH%"

## setx PATH "%USERPROFILE%\.pyenv\pyenv-win\bin;%USERPROFILE%\.pyenv\pyenv-win\shims;%PATH%"
## setx PATH "%USERPROFILE%\.pyenv\plugins\pyenv-virtualenv;%PATH%"

위 명령어를 실행하면 시스템>고급시스템 설정> 환경변수> 사용자변수 에 다음과 같이 등록됩니다.

 

환경 변수가 적용되도록 Command Prompt를 다시 시작합니다.

2. pyenv-win 기본 사용법

2.1. Python 버전 설치

pyenv-win을 사용하여 원하는 버전의 Python을 설치합니다. 예를 들어, Python 3.8.10 을 설치합니다.

 

pyenv install 3.8.10

설치된 폴더는 아래 그림과 같네요.

2.2. 설치된 Python 버전 확인

설치된 Python 버전 목록을 확인합니다.

pyenv versions

pyenv versions 를 통해서 pyenv 로 설치해서 등록된 python version 들을 확인할 수 있습니다.
다른 where python 이나 py -0 명령어로 조회해 보면 pyenv 를 사용해서 등록한 python 의 모습은 볼 수가 없습니다.

Get-Command python* | Select-Object Name, Version, Source

powershell 의 명령어로도 찾을 수가 없군요.

2.3. 글로벌 Python 버전 설정

시스템 전체에서 사용할 기본 Python 버전을 설정합니다.

pyenv global 3.8.10

궁금해서 pyenv 로 설치하지 않은 기존의 python 과의 설정을 보려고 py -0 을 실행해 봤습니다.
골때리는 상황이 전개될 듯하군요.. ㅎㅎ

3. 프로젝트별 로컬 Python 버전 설정

3.1. 프로젝트별 로컬 Python 버전설치

일단 설치가능한 버전을 확인해 봅니다. MAC OS 와 동일한 명령어라서 마음에 듭니다.

pyenv install --list

그리고 3.10.11 version 을 설치합니다.

pyenv install 3.10.11

3.2. 프로젝트 디렉토리로 이동

프로젝트가 있는 디렉토리로 이동합니다.

cd d:\Python_Labs\Projects\Prj_31011

3.3. 로컬 Python 버전 설정

해당 프로젝트에서 사용할 Python 버전을 설정합니다.

pyenv local 3.10.11

3.4. 설정 확인

pyenv local 3.10.11 명령어를 실행시키고 pyenv version 을 실행시켜서 현재 Prj_31011 폴더에서 사용중인 python 버전이 아래와 같이 3.10.11 이 설정된 모습을 볼 수 있습니다.

다른 폴더로 이동했을 때 pyenv version 을 실행시키면 Global version 이 표시되는 걸 볼 수 있죠.

pyenv version

3.5. 설정 해결

 

하지만 python –version 을 확인해보면 아직도 3.12 버전이 표시되는 걸 볼 수 있습니다.
느낌적인 느낌적으루다가.. 환경변수를 수정해 주면 될 듯합니다.

이 곳에 등록되어 있는 환경변수를 삭제해 줍니다. 그리고 열려있는 command 창을 닫아주고 다시 열어줍니다.

이제야 해결됐네요..

3.12.0 이 설치되어 있는 상황인데도요..

 

속이 시원합니다. ^^

4. 가상환경 생성 및 관리

4.1. 가상환경 생성

pyenv-win과 virtualenv를 함께 사용하여 가상환경을 생성할 수 있습니다. virtualenv가 설치되어 있는지 확인합니다.
하지만 MAC OS 에 비해 좀 귀찮네요.

pip install virtualenv

특정 Python 버전을 사용하여 가상환경을 생성합니다.

pyenv shell 3.10.11
virtualenv virtualEnv_31011
## pyenv virtualenv 3.10.11 virtualEnv_31011 # MAC OS 와 다른점이에요.

windows 에서는 Pyenv-Virtualenv plugin 을 사용할 수 없습니다.
그래서 위와 같은 방법을 사용할 수 밖에 없어요.

4.2. 가상환경 목록 확인

생성된 가상환경 목록을 확인합니다.

## pyenv virtualenvs #Pyenv-Virtualenv plugin 을 사용할 수 없어서 MAC OS 에서 사용가능합니다.

4.3. 가상환경 활성화

생성한 가상환경을 활성화합니다.

virtualEnv_31011\Scripts\activate # 폴더위치 확인하세요... ^^
## pyenv activate myenv #Pyenv-Virtualenv plugin 을 사용할 수 없어서 MAC OS 에서 사용가능합니다.

4.4. Package 설치

가상환경이 활성화된 상태에서 pip 명령어를 사용하여 필요한 패키지를 설치할 수 있습니다. 예를 들어, requests 패키지를 설치하려면 다음과 같이 입력합니다.

pip install requests  

설치하고 나면 \virtualEnv_31011\Lib\site-packages 폴더내에 request 관련 libray 들이 설치되어 있는 것을 확인할 수 있습니다.

4.5. 가상환경 비활성화

작업이 끝난 후 가상환경을 비활성화합니다.

deactivate

4.6. 가상환경 삭제

필요 없는 가상환경을 삭제합니다.

rmdir /s /q virtualEnv_31011
## pyenv uninstall myenv #Pyenv-Virtualenv plugin 을 사용할 수 없어서 MAC OS 에서 사용가능합니다.

결론

이제 pyenv-win을 사용하여 Windows 환경에서 Python 버전과 가상환경을 쉽게 구성하고 관리할 수 있게 되었습니다.
다양한 프로젝트마다 필요한 Python 버전을 독립적으로 설정하고, 가상환경을 활용하여 패키지 충돌 없이 개발을 진행할 수 있습니다. pyenv-win은 Python 개발자의 생산성을 높이는 데 큰 도움이 됩니다.
하지만 Windows 에서는 pyenv 의 기능이 조금은 복잡하고 귀찮은 과정이 있네요..

여튼 재미나게 python 을 사용할 수 있게 되었습니다.

다음번에는 anaconda 의 환경 설정을 살펴보겠습니다.

행복한 고수되십시오.

WooGong ))*
\\\\\\\\\\\\\\\\