当前位置:  开发笔记 > 编程语言 > 正文

哪个是最pythonic:通过包管理器(macports,apt)或通过pip/easy_install/setuptools安装python模块

如何解决《哪个是最pythonic:通过包管理器(macports,apt)或通过pip/easy_install/setuptools安装python模块》经验,为你挑选了2个好方法。

通常我倾向于通过包管理器安装东西,用于unixy东西.但是,当我编写了很多perl时,我会使用CPAN,更新版本等等.

一般来说,我曾经通过包管理器安装系统东西,并通过它自己的包管理器安装语言东西(gem/easy_install | pip/cpan)

现在主要使用python,我想知道最佳实践是什么?



1> Lennart Rege..:

系统python版本及其库通常由分发中的软件使用.只要您使用的软件对相同版本的python和您的发行版所有库感到满意,那么使用分发包就可以了.

但是,您经常需要开发版本的软件包,或更新版本或更早版本.然后它不再起作用了.

因此,通常建议您安装自己用于开发的Python版本,并使用buildout或virtualenv或两者创建开发环境,以将系统python和开发环境相互隔离.



2> Martin v. Lö..:

有两个完全相反的阵营:一个支持系统提供的包,一个支持单独安装.我亲自参加"系统套餐"阵营.我将从下面的每一方提供论据.

Pro系统包:系统打包器已经关注依赖性,并且符合整体系统策略(例如文件布局).系统软件包提供安全更新,同时仍然关心不破坏兼容性 - 因此他们有时会向上游作者不反向移植安全修复程序.系统包是"安全的".系统升级:系统升级后,您可能还有一个新的Python版本,但如果它们来自系统打包程序,那么所有的Python模块仍然存在.这是Debian的所有个人经历.

Con系统包:并非所有软件都可以作为系统包提供,或者不是最新版本; 将自己安装到系统中可能会破坏系统包.升级可能会破坏您的申请.

Pro单独安装:有些人(特别是Web应用程序开发人员)认为您绝对需要可重复的设置,只需要您想要的软件包,并完全与系统Python分离.这不仅仅是自安装系统包,因为即使是自安装,你仍然可以修改系统python; 单独安装,你不会.正如Lennart所讨论的,现在有专门的工具链来支持这种设置.人们认为只有这种方法才能保证可重复的结果.

单独安装:您需要自己处理错误修复,并且需要确保所有用户都使用单独的安装.在Web应用程序的情况下,后者通常很容易实现.

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有