macOS에는 기본적으로 파이썬(Python)이 미리 설치되어 있습니다. 하지만 그 버전은 파이썬 2.7로, 현재는 개발자 커뮤니티에서 공식 지원이 종료된(deprecated) 구버전입니다.
파이썬 커뮤니티 전체가 이미 파이썬 3.x로 넘어온 상태이며(이 글을 작성하는 시점의 최신 버전은 3.9), 곧 출시될 파이썬 4.x 역시 기존 코드와 완전히 호환될 예정입니다.
맥OS 터미널에서 파이썬을 실행해 보면 다음과 같은 경고 메시지를 직접 확인할 수 있습니다:

애플이 기본값을 파이썬 3.x로 변경하기 전까지는, 사용자가 직접 최신 파이썬을 설치해야 합니다.
명령어 한 줄로 Python 3 실행하기
간단한 사용이라면 아래 명령어 하나면 충분합니다. 명령어 끝에 3만 붙이면 파이썬 3를 실행할 수 있습니다.
python3여기까지만 필요하셨다면 문제없습니다. 즐거운 코딩 되세요!
하지만 여러 파이썬 버전을 체계적으로 관리하고, 프로젝트별로 원하는 버전을 세밀하게 선택하고 싶다면 이 튜토리얼이 정확한 방법을 안내해 드립니다.

맥에 Homebrew 설치하기
먼저 맥용 강력한 패키지 관리자인 Homebrew(홈브루)를 설치해야 합니다.
터미널을 열어 주세요. macOS 스포트라이트(Command + Space)를 누르고 "terminal"을 입력하면 실행할 수 있습니다.
커맨드 라인이 준비되었다면, 아래 명령어를 입력해 최신 버전의 Homebrew를 설치합니다:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"터미널이 관리자(Super User) 권한을 요청합니다. 맥 로그인 시 사용하는 것과 동일한 비밀번호를 입력하고 엔터 키를 누르면 됩니다.

Homebrew가 설치 진행 여부를 묻습니다. 계속하려면 엔터 키를 누르세요. (설치를 취소하고 싶다면 다른 키를 누르면 됩니다.)

pyenv 설치로 Python 버전 관리하기
이번에는 pyenv를 설치해 보겠습니다. pyenv를 사용하면 서로 다른 파이썬 버전 사이를 자유롭게 전환할 수 있습니다. 특정 이유로 파이썬 2.x를 실행해야 하는 경우나, 앞으로 출시될 파이썬 4.0에 대비할 때 특히 유용합니다.
아래 명령어를 실행하세요:
brew install pyenv
이제 최신 버전의 파이썬을 설치할 수 있습니다.
pyenv로 Python 설치 및 버전 업데이트하기
다음 명령어만 입력하면 됩니다:
pyenv install 3.9.2 3.9.2는 현재 최신 버전 번호로 자유롭게 바꿔서 입력할 수 있습니다. 예를 들어 나중에 파이썬 4.0.0이 출시되면 아래처럼 실행하면 됩니다:
pyenv install 4.0.0pyenv 설치 오류 해결하기
"C compiler cannot create executables"라는 오류가 발생한다면, 가장 간단한 해결책은 애플 Xcode를 재설치하는 것입니다.
Xcode는 애플이 만든 도구로, 파이썬이 macOS에서 실행될 때 필요한 C 라이브러리와各종 개발 도구를 모두 포함하고 있습니다. 용량이 무려 11GB나 되지만, 항상 최신 상태로 유지하는 것이 좋습니다. 시간이 오래 걸리므로 잠들기 전에 실행해 두는 것도 좋은 방법입니다.
Xcode 최신 버전은 애플 공식 사이트에서 내려받을 수 있습니다. 필자도 macOS Big Sur로 업그레이드한 후 이 과정이 필요했는데, 완료한 뒤에는 이후의 모든 명령어가 정상적으로 작동했습니다. 위의 pyenv install 3.9.2 명령어를 다시 실행하면 이제 잘 될 것입니다.
pyenv를 위한 macOS PATH 설정하기 (Bash 또는 ZSH)
먼저 Unix PATH 환경변수를 업데이트해서 pyenv가 시스템과 상호작용할 수 있는 길을 열어 주어야 합니다.
아래는 pyenv GitHub 저장소에서 발췌한, macOS(및 Unix)에서 PATH가 작동하는 방식에 대한 긴 설명입니다.
python이나pip같은 명령어를 실행하면, 운영체제는 디렉터리 목록을 순서대로 탐색하며 해당 이름의 실행 파일을 찾습니다. 이 디렉터리 목록은PATH라는 환경 변수에 담겨 있으며, 각 디렉터리는 콜론(:)으로 구분됩니다:
/usr/local/bin:/usr/bin:/bin
PATH의 디렉터리들은 왼쪽부터 오른쪽으로 탐색되므로, 목록 앞쪽에 있는 디렉터리의 실행 파일이 뒤쪽의 것보다 우선순위를 가집니다. 위 예시에서는/usr/local/bin이 먼저 검색되고, 그다음/usr/bin, 마지막으로/bin이 검색됩니다.
이어서 '심(shim)'이 무엇인지에 대한 설명입니다. 이 부분 역시 공식 문서가 더 잘 설명하기 때문에 그대로 인용합니다.
pyenv는 shims(심) 디렉터리를 PATH의 맨 앞에 삽입하는 방식으로 작동합니다:$(pyenv root)/shims:/usr/local/bin:/usr/bin:/bin
rehashing이라는 과정을 통해 pyenv는 해당 디렉터리의 심들을 관리하며, 설치된 모든 파이썬 버전의 모든 파이썬 명령어(python,pip등)와 일치하도록 유지합니다.
심은 여러분의 명령어를 단순히 pyenv로 전달하는 가벼운 실행 파일입니다.
Bash(macOS 기본 셸)에서는 .bash_profile을 다음과 같이 업데이트합니다:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile그다음 아래 명령어를 실행합니다:
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile참고: pyenv_root 폴더 안에 /bin 디렉터리가 없고 /shims 디렉터리만 있다면, 대신 아래 버전의 명령어를 실행해야 할 수 있습니다:
`echo 'export PATH="$PYENV_ROOT/shims:$PATH"' >> ~/.bash_profile`이제 터미널에 PyEnv Init 설정을 추가합니다. Bash를 사용 중이라면(macOS 기본값) 아래 명령어를 실행하세요:
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
마지막으로 아래 명령어로 터미널을 초기화합니다:
resetZSH 또는 OhMyZSH에서 pyenv PATH 설정하기
맥 기본 셸인 Bash 대신 필자처럼 ZSH(또는 OhMyZSH)를 사용 중이라면, .zshrc 파일을 수정해야 합니다:
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc그다음 아래 명령어를 실행합니다:
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init --path)"\n eval "$(pyenv init -)"\nfi' >> ~/.zshrcPython 기본 버전을 글로벌로 설정하기 (Bash 또는 ZSH)
최신 파이썬 버전을 글로벌(global) 기본값으로 설정할 수 있습니다. 이렇게 하면 맥에서 파이썬 애플리케이션을 실행할 때 항상 해당 버전이 사용됩니다.
아래 명령어를 실행하세요:
pyenv global 3.9.2역시 3.9.2는 최신 버전 번호로 언제든 교체 가능합니다.
이제 글로벌 파이썬 버전을 확인해 설정이 제대로 적용되었는지 검증할 수 있습니다:
pyenv versions아래와 같은 출력이 보일 것입니다:

마지막 단계: 터미널 종료 후 재시작하기
터미널을 재시작한 뒤 python 명령어를 입력하면, 이제 구버전이 아니라 새로 설치한 파이썬이 실행됩니다.

축하합니다! 끝까지 읽어 주셔서 감사합니다. 즐거운 코딩 되세요!