programing

파이썬의 사이트 패키지 디렉터리는 무엇입니까?

stoneblock 2023. 6. 28. 21:17

파이썬의 사이트 패키지 디렉터리는 무엇입니까?

디렉터리site-packages는 다양한 파이썬 관련 기사에 언급되어 있습니다.그것은 무엇일까요?어떻게 사용하나요?

site-packages수동으로 빌드된 Python 패키지의 대상 디렉터리입니다.소스에서 Python 패키지를 빌드하고 설치할 때(distutils 사용, 아마도 실행을 통해)python setup.py install)에서 설치된 모듈을 찾을 수 있습니다.site-packages결석으로

표준 위치는 다음과 같습니다.

  • Unix(순수):1 prefix/lib/pythonX.Y/site-packages
  • Unix(순수하지 않음): exec-prefix/lib/pythonX.Y/site-packages
  • Windows:prefix\Lib\site-packages

1 Pure는 모듈이 Python 코드만 사용한다는 것을 의미합니다.비순수는 C/C++ 코드도 포함할 수 있습니다.

site-packages는 기본적으로 Python 검색 경로의 일부이므로 나중에 쉽게 가져올 수 있습니다.


유익한 읽을거리

pip 옵션을 사용하면 패키지가 글로벌 폴더가 아닌 사용자 폴더에 설치되므로 관리자 권한으로 pip 명령을 실행할 필요가 없습니다.

사용자 패키지 폴더의 위치는 다음을 사용하여 찾을 수 있습니다.

python -m site --user-site

이렇게 하면 다음과 같은 내용이 인쇄됩니다.

C:\Users\%USERNAME%\AppData\Roaming\Python\Python35\site-packages

pip 옵션을 사용하지 않는 경우 패키지는 다음과 같이 지정된 전역 폴더에 설치됩니다.

python -c "import site; print(site.getsitepackages())"

이렇게 하면 다음과 같은 내용이 인쇄됩니다.

['C:\\Program Files\\Anaconda3', 'C:\\Program Files\\Anaconda3\\lib\\site-packages'

참고: 위의 인쇄된 값은 Anaconda 4.x가 기본값으로 설치된 Windows 10의 경우입니다.

site-packages는 Python이 모듈을 설치하는 위치일 뿐입니다.

Python은 "찾을" 필요가 없으며, PYTHONPATH(sys.path)의 항상 위치를 알고 있습니다.

프로그래밍 방식으로 다음과 같은 방법으로 찾을 수 있습니다.

import sys
site_packages = next(p for p in sys.path if 'site-packages' in p)
print(site_packages)

'/Users/foo/.envs/env1/lib/python3.11.1/site-packages'

내 CentOS 7.9 Linux(RedHat 클론)에서 찾을 수 있습니다.~/.local/lib/python3.9/site-packages/PYONPATH 변수에 포함시킬 필요가 없습니다.

다음 기준:

Python 설치에는 모듈 디렉토리 내에 사이트 패키지 디렉토리가 있습니다.이 디렉터리는 사용자가 설치한 패키지가 삭제되는 위치입니다.

사이트라는 단어선택된 이유를 설명하지는 않지만 이 디렉터리의 의미는 설명합니다.

언급URL : https://stackoverflow.com/questions/31384639/what-is-pythons-site-packages-directory