어느 날 pip를 사용하여 Python 패키지를 즐겁게 설치하고 있었는데 갑자기 깨달았습니다. 방금 3GB의 데이터를 다운로드했는데 그것이 어디로 갔는지 전혀 모릅니다! 이런 상황에 처한 적이 있다면 클럽에 오신 것을 환영합니다. 누락된 Python 패키지의 미스터리를 함께 밝혀내고 귀중한 디스크 공간을 더 잘 관리하는 방법을 알아봅시다.
"내 패키지는 도대체 어디에 있지?"에 대해 알아보기 전에 이 생태계가 어떻게 작동하는지 좀 더 잘 이해해 보겠습니다. Python Package Index(PyPI)는 거대한 코드 쇼핑몰과 같습니다. 상점 대신에 우리는 다른 사람들이 사용할 수 있도록 패키지를 만드는 개발자를 보유하고 있습니다. 그리고 핍? 글쎄, 그것은 우리 컴퓨터에 이러한 패키지를 다운로드하고 설치하는 역할을 하는 가상 장바구니입니다.
순진한 pip 설치를 실행하면 십대들이 주말에 놀 곳을 선택하는 것처럼 패키지가 다른 장소에 있을 수 있습니다. 다음 장소를 알아보세요:
/usr/local/lib/pythonX.Y/site-packages/ # or /usr/lib/pythonX.Y/site-packages/
패키지의 공유아파트입니다. 시스템의 모든 사람이 사용할 수 있지만 변경하려면 관리자 권한이 필요합니다. 벽에 그림을 걸려면 집주인에게 허락을 받아야 하는 쉐어하우스와 같습니다.
~/.local/lib/pythonX.Y/site-packages/
여기가 여러분의 비공개 코너입니다. pip install --user를 사용하면 패키지가 이 주소에 위치하게 됩니다. 더 안전하고 시스템의 다른 사용자를 방해하지 않습니다. 마치 나만의 방을 갖는 것과 같습니다. 누구와도 상의하지 않고도 원하는 대로 꾸밀 수 있습니다.
<caminho_para_venv>/lib/pythonX.Y/site-packages/
가상 환경은 패키지를 위해 에어비앤비를 임대하는 것과 같습니다. 각 프로젝트는 다른 프로젝트와 충돌하지 않고 자체 패키지 버전을 갖춘 자체 공간을 가질 수 있습니다. 요구 사항이 서로 다른 여러 프로젝트를 진행하는 사람들에게 이상적인 솔루션입니다.
나처럼 무언가를 설치했는데 "어디가 있지?"라고 생각하고 있다면 도움이 될 수 있는 몇 가지 탐지 도구가 있습니다.
pip show package_name
이 명령은 패키지의 GPS와 같습니다. 버전, 종속성, 간략한 설명 등 기타 유용한 정보와 함께 각 버전이 설치된 위치를 정확하게 보여줍니다.
각 패키지가 얼마나 많은 공간을 차지하고 있는지 알고 싶은 분들을 위해 다음 명령 조합을 사용할 수 있습니다.
pip list --format=freeze | cut -d '=' -f 1 | while read package; do size=$(du -sh "$(pip show -f "$package" | grep Location | cut -d ' ' -f 2)/$package" 2>/dev/null | cut -f1) echo "$package - $size" done
패키지가 너무 많은 공간을 차지하고 있다는 사실을 발견하셨나요? 청소할 시간입니다:
/usr/local/lib/pythonX.Y/site-packages/ # or /usr/lib/pythonX.Y/site-packages/
하지만 조심하세요! 모든 항목 제거를 시작하기 전에 제거하려는 항목에 다른 패키지가 종속되어 있는지 확인하세요. 이는 Jenga에서 블록을 꺼내는 것과 같습니다. 일부 조각은 모든 것을 유지하는 데 중요할 수 있습니다.
몇 가지 경험(고백하자면 고통스러웠지만)을 거친 후 다음과 같은 몇 가지 유용한 팁을 얻었습니다.
가상 환경 사용: 정말로, 이렇게 하면 골치 아픈 일이 많이 줄어들 것입니다. 프로젝트마다 새로운 집을 갖는 것과 같습니다.
requirements.txt 유지: 프로젝트에 필요한 모든 패키지를 나열합니다. 이는 쇼핑 목록을 작성하는 것과 같습니다. 필요한 것이 무엇인지 정확히 알 수 있습니다.
정기적으로 검토: 때때로 설치된 패키지를 살펴보세요. 더 이상 사용하지 않는 숫자에 놀라실 수도 있습니다.
문서 종속성: 각 패키지를 설치한 이유를 기록해 두세요. 미래의 당신도 감사할 것입니다.
Python 패키지의 세계는 방대하고 때로는 약간 혼란스럽기도 하지만 올바른 도구와 약간의 구성만 있으면 모든 것을 제어할 수 있습니다. 집을 깔끔하게 유지하는 것과 같습니다. 노력이 필요하지만 그만한 가치가 있습니다.
다음번에 Python 패키지를 설치하면 알게 될 것입니다. 이 패키지는 디지털 에테르 속으로 그냥 사라지지 않을 것입니다. 고정된 주소가 있고, 스스로 부를 수 있는 집이 있습니다. 이제 필요할 때 찾을 수 있는 방법을 정확히 알게 되었습니다.
기억하세요: 체계적인 개발자는 행복한 개발자입니다. 그리고 정리된 파일 시스템은 새벽 3시에 "더 이상 디스크 공간이 없다"는 이유로 컴퓨터를 창밖으로 던지고 싶지 않게 만드는 파일 시스템입니다.
위 내용은 Python 패키지 관리: 그들이 어디에 사는지 아시나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!