PATH 변수의 내용을 편집합니다.

PATH 변수의 내용을 편집합니다.

python3zsh 터미널에 다음을 입력하면 Python 3.9가 시작됩니다.

Python 3.9.0 (v3.9.0:9cf6752276, Oct  5 2020, 11:29:23) 
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 

which python3출력은 다음과 같습니다 .

/Library/Frameworks/Python.framework/Versions/3.9/bin/python3

이는 python3실행 파일이 해당 위치에 있음을 의미합니다.

터미널을 사용하는 동안 Python 3.9에서 Python 3.11로 전환하고 싶습니다. Python 3.11을 설치했으며 위치는 다음과 같습니다.

/Library/Frameworks/Python.framework/Versions/3.11/bin/python3.11

echo $PATH출력 은 다음 과 같습니다 .

/Users/alex/Library/Android/sdk/platform-tools
/Users/alex/Library/Android/sdk/tools
/Library/Frameworks/Python.framework/Versions/3.9/bin
/opt/homebrew/bin
/opt/homebrew/sbin
/Library/Frameworks/Python.framework/Versions/3.11/bin
/Library/Frameworks/Python.framework/Versions/3.10/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/Library/TeX/texbin
/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin
/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin
/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin

터미널에 (또는 실제로) 입력할 python3때 Python 3.9 대신 Python 3.11을 실행 하려면 다음과 같이 해야 한다고 생각했습니다.python

  • Python 3.11 실행 파일의 맨 위에 삽입하십시오 PATH. 즉, 이제 인쇄가 변수 위에 있기 export PATH=/Library/Frameworks/Python.framework/Versions/3.11/bin:$PATH때문에 실제로 작동합니다 .echo $PATH/Library/Frameworks/Python.framework/Versions/3.11/binPATH

  • 변수를 편집하고 나가는 길에 및 를 PATH제거하세요 /Library/Frameworks/Python.framework/Versions/3.9/bin./Library/Frameworks/Python.framework/Versions/3.10/bin/Library/Frameworks/Python.framework/Versions/3.11/bin

cat ~/.zshrc인쇄에 유의하십시오 :

# python aliases
alias python="python3"
alias pip="pip3"

# adb
export PATH=~/Library/Android/sdk/tools:$PATH
export PATH=~/Library/Android/sdk/platform-tools:$PATH

# English
export LC_ALL=en_US.UTF-8

어떻게 해야 합니까? ~/.zshrc파일을 편집하고 추가해야 합니까 export PATH=/Library/Frameworks/Python.framework/Versions/3.11/bin:$PATH, 아니면 변수 3.9또는 다른 해결 방법에서 제거하고 삭제해야 합니까?3.10PATH

답변1

에서 배열 zsh$path변수와 연관됩니다 $PATH.

다음을 수행하여 요소가 고유한지 확인할 수 있습니다 typeset -U path.

그런 다음 다음 명령을 사용하여 디렉터리를 맨 앞으로 삽입하거나 이동할 수 있습니다.

path[1,0]=( /that/dir )

패턴과 일치하는 항목을 제거하려면 다음을 수행할 수 있습니다.

path=( ${path:#pattern} )

따라서 여기에 결합하면 다음과 같을 수 있습니다.

typeset -U path 
path=( ${path:#/Library/Frameworks/Python.framework/Versions/3.<0-10>/bin} )
path[1,0]=( /Library/Frameworks/Python.framework/Versions/3.11/bin )

을 업데이트하면 $PATH다음을 사용하여 작성된 스크립트에 영향을 미칩니다.

#! /usr/bin/env python3

shebangs이지만 스크립트에 특정 버전의 Python이 필요한 경우

#! /usr/bin/env python3.9

또는 Python 버전 제어와 관련된 혼란을 해결하는 여러 방법 중 하나를 사용하십시오.

답변2

별명이 설정되었으므로. 그 출처를 찾아보셨나요?

source ~/.zshrc

실패하면 두 번째 접근 방식은 Python 3.9에서 Python 3.11에 대한 심볼릭 링크를 설정하는 것입니다.

관련 정보