두 개의 완전히 반대되는 캠프가 있습니다. 하나는 시스템 제공 패키지이고 다른 하나는 별도 설치입니다. 저는 개인적으로 "시스템 패키지"캠프에 있습니다. 나는 각 측면에서 아래의 주장을 제공 할 것이다.
Pro 시스템 패키지 : 시스템 패키지 작성자는 이미 종속성 및 전체 시스템 정책 (파일 레이아웃 등)을 준수하는지 알고 있습니다. 시스템 패키지는 보안 업데이트를 제공하면서도 호환성을 손상시키지 않으므로 업스트림 작성자가 백 포트하지 않은 보안 픽스를 백 포트하기도합니다. 시스템 패키지는 "안전"합니다. 시스템 업그레이드 : 시스템 업그레이드 후에는 새로운 Python 버전이있을 수도 있지만, 시스템 포장기에서 나온 모든 Python 모듈은 여전히 존재합니다. 데비안에 대한 모든 개인적인 경험입니다.
시스템 패키지 : 모든 소프트웨어가 시스템 패키지로 제공되거나 최신 버전으로 제공되지 않을 수 있습니다. 스스로 시스템에 설치하면 시스템 패키지가 손상 될 수 있습니다. 업그레이드하면 응용 프로그램이 손상 될 수 있습니다.
전문가 별 설치 : 일부 사람들 (특히 웹 응용 프로그램 개발자)은 원하는 패키지만으로 반복적 인 설치가 절대적으로 필요하며 시스템 Python과 완전히 분리되어 있다고 주장합니다. 자체 설치 대 시스템 패키지보다 훨씬 뛰어납니다. 자체 설치의 경우에도 여전히 시스템 파이썬을 수정할 수 있습니다. 별도의 설치로, 당신은하지 않을 것입니다. Lennart가 논의한 것처럼 이제는이 설정을 지원하는 전용 도구 체인이 있습니다. 사람들은이 방법 만 반복 가능한 결과를 보장 할 수 있다고 주장합니다.
별도 설치 : 버그 수정을 직접 처리해야하며 모든 사용자가 별도로 설치해야합니다. 웹 응용 프로그램의 경우 일반적으로 후자를 쉽게 구현할 수 있습니다.
[pyenv] (https://github.com/yyuu/pyenv#readme)는 여러 Python 버전과 [virtualenvs] (https://github.com/yyuu/pyenv-virtualenv#readme)를 관리하는 훌륭한 도구입니다.). –