1. 설치
1-1. PowerShell 설치 명령어
Invoke-WebRequest -UseBasicParsing -Uri "https://raw.githubusercontent.com/pyenv-win/pyenv-win/master/pyenv-win/install-pyenv-win.ps1" -OutFile "./install-pyenv-win.ps1"; &"./install-pyenv-win.ps1"
1-2. 설치 후 추가되는 PATH
| 용도 | 경로 |
|---|
| pyenv 명령어 | C:\Users\exoluse\.pyenv\pyenv-win\bin |
| python, pip 실행 | C:\Users\exoluse\.pyenv\pyenv-win\shims |
2. pyenv-win의 개념
- 여러 버전의 Python을 설치/관리할 수 있는 도구
- 현재 디렉토리 또는 전역에 설정된 버전에 따라 적절한 Python 실행
- 실행 시
.python-version 파일을 읽어 해당 버전의 Python 실행
3. Python 버전 설정 방법
3-1. 프로젝트(로컬) 단위 설정
pyenv local 3.13.5
- 현재 디렉토리에
.python-version 파일 생성됨
- 파일 내용:
3.13.5
3-2. 전역(Global) 기본 버전 설정
pyenv global 3.13.4
.python-version 파일이 없는 경우 적용됨
4. Python 명령 실행 흐름
4-1. 실행 흐름 요약 (python 입력 시)
4-1-1. PATH에 등록된 shims\python.bat 실행
- 위치:
C:\Users\exoluse\.pyenv\pyenv-win\shims\python.bat
4-1-2. python.bat 내부 내용
call pyenv exec %~n0 %*
%~n0 → python (배치 파일 이름에서 확장자 제거)
%* → 사용자 입력 인자들
4-1-3. 실제 실행 명령
pyenv exec python [사용자 인자...]
4-1-4. pyenv가 실행할 Python 결정 순서
- 현재 디렉토리의
.python-version
- 없으면 전역 설정
- 해당 Python 실행 파일 호출:
C:\Users\exoluse\.pyenv\pyenv-win\versions\3.13.5\python.exe
5. 주요 명령어 요약
| 기능 | 명령어 |
|---|
| 설치 가능한 버전 보기 | pyenv install -l |
| 특정 버전 설치 | pyenv install 3.13.5 |
| 현재 폴더 버전 설정 | pyenv local 3.13.5 |
| 전역 디폴트 버전 설정 | pyenv global 3.13.4 |
| 현재 사용 중인 Python 확인 | pyenv which python |
| 현재 적용된 버전 보기 | pyenv version |
6. 참고
.python-version 파일은 단순 텍스트 파일이며, 내용은 사용하고자 하는 Python 버전 문자열
shims 폴더는 모든 Python 관련 명령어 호출을 가로채서, 지정된 Python 버전으로 전달하는 역할