![]() |
1
4
一旦您到达应用程序准备好发布的位置,就可以将它打包为您最喜欢的发行版/OS,以将库代码放入站点包中,并将可执行脚本放到系统路径上。 在此之前(也就是说,对于所有的开发工作),不要做任何上述的事情:省去你的主要头痛和使用 zc.buildout 或 virtualenv 使您的开发代码(如果您愿意,还包括它的依赖项)与系统的其余部分保持隔离。 |
![]() |
2
4
我们这样做。
我们下载的大多数东西都在站点包中。他们来自
我们写的东西必须在其他地方(通常在
没有
伟大的
把我们的东西放在外面的理由
由于我们测试的是工作目录或SVN签出目录,因此我们的测试环境会大量使用
开发利用
|
![]() |
3
3
最终用户运行的程序通常位于其路径的某个位置,其中大部分代码位于模块目录中,而模块目录通常位于站点包中。 许多python程序将在路径中有一个小脚本,该脚本导入模块,并调用“main”方法来运行程序。这允许程序员进行一些预先检查,如果需要,还可以修改sys.path以找到所需的模块。这也可以加快大型程序的加载时间,因为只有导入的文件才会从字节码运行。 |
![]() |
4
0
当然,网站包是为图书馆提供的。 一种混合方法可能有效:您可以在站点包中安装应用程序所需的库,然后在其他地方安装主模块。 |
![]() |
5
0
如果您可以将应用程序的一部分转换为库并提供API,那么站点包就是一个很好的地方。实际上,这就是有多少python应用程序执行此操作。 但从用户或管理员的角度来看,这并不是问题所在。问题是我们如何管理安装的内容。安装之后,如何升级和卸载它? 我用FEDORA。如果我使用它附带的python,我不喜欢将东西安装到RPM系统之外的站点包中。在某些情况下,我自己构建了RPM来安装它。 如果我在RPM之外构建自己的Python,那么我自然希望使用Python的机制来管理它。 第三种方法是使用类似easy-install的东西来安装这样的东西,例如用户到主目录。 所以
|