Python3:安装自己的和第三方软件包的好位置?

Python3:安装自己的和第三方软件包的好位置?,python,installation,package,Python,Installation,Package,对于Python 3.x: 我想知道在哪个最佳目录中找到我想在多个项目中使用的模块以及任何相关因素。我知道import语句和PYTHONPATH,以及使任何位置工作的各种方法,但我希望符合标准实践 因此: 我应该将模块放在Pythonxx\Lib\site包中吗 站点包目录是否得到特殊处理,或者它与模块的其他可能位置没有区别?我搞不清楚它是否有特殊的.pth和/或_uinit_uu.py行为 distutils的作用在多大程度上影响了约定,而distutils似乎并没有真正为Python 3做好

对于Python 3.x:

我想知道在哪个最佳目录中找到我想在多个项目中使用的模块以及任何相关因素。我知道import语句和PYTHONPATH,以及使任何位置工作的各种方法,但我希望符合标准实践

因此:

我应该将模块放在Pythonxx\Lib\site包中吗

站点包目录是否得到特殊处理,或者它与模块的其他可能位置没有区别?我搞不清楚它是否有特殊的.pth和/或_uinit_uu.py行为

distutils的作用在多大程度上影响了约定,而distutils似乎并没有真正为Python 3做好准备。。。这是否意味着我应该参加今后的一些其他会议

我应该如何理解这一点:在表中,安装工作原理似乎声称“站点包”与Windows无关,尽管我在Windows Python 3.1安装中看到一个空的站点包目录


-谢谢

> P>您可能希望考虑设置A,这是捆绑跨项目和平台使用的一组模块的标准方式。

您可能希望考虑设置A,这是捆绑一组模块用于跨项目和平台使用的标准方式。 是-但是让你的setup.py来做

没有

你为什么认为有问题

这些文件需要修改。默认的Python安装目录是C:\PythonXY,而不是C:\Python。默认的软件包安装目录是C:\PythonXY\Lib\site-packages

是-但是让你的setup.py来做

没有

你为什么认为有问题

这些文件需要修改。默认的Python安装目录是C:\PythonXY,而不是C:\Python。默认的软件包安装目录是C:\PythonXY\Lib\site-packages

这是另一种选择。您可以尝试以下方法:

python setup.py install --user
安装到%APPDATA%\Python\Python32比创建一个全新的virtualenv要轻量级得多。这是默认设置。

是另一个选项。您可以尝试以下方法:

python setup.py install --user

安装到%APPDATA%\Python\Python32比创建一个全新的virtualenv要轻量级得多。这是默认设置。

巧合的是,今天是我问这个问题的周年纪念日。尽管受访者试图提供帮助,但我最终还是更深入地调查了这个问题。这导致了我在这里发布的注释:。
还有一些在python.org上发布相同用户名的报告,以及对其文档的一些修订。我希望这能帮助其他同样被难倒的人。

巧合的是,今天是我提出这个问题的周年纪念日。尽管受访者试图提供帮助,但我最终还是更深入地调查了这个问题。这导致了我在这里发布的注释:。
还有一些在python.org上发布相同用户名的报告,以及对其文档的一些修订。我希望这能帮助其他同样被难倒的人。

我很感激你的回答,但是。。。目前我对在一台台式机上的多个项目上使用相同的代码进行部署不感兴趣。通过阅读pypi文档页面,virtualenv看起来更适合于涉及部署到服务器等的用例,因此尽管我听说过virtualenv,但它似乎对解决当前问题没有帮助。我感谢您的回复,但。。。目前我对在一台台式机上的多个项目上使用相同的代码进行部署不感兴趣。通过阅读pypi文档页面,virtualenv看起来更适合于涉及部署到服务器等的用例,因此尽管我听说过virtualenv,但它似乎对解决当前问题没有帮助。嗯,我看到前两个答案与如何部署包virtualenv和setup.py有关。我的案例仅适用于在单个桌面上工作,在这里,我可以手动将常用模块放置在我想要的位置,并且可能手动调整路径,而无需部署本身。也许我可以被说服去做一些更正式的事情,但是目前为这些文件创建一个安装程序似乎有些过分。你打算接受一个答案吗?看到每个答案左边的大勾号了吗?如果没有,请告诉我们您需要什么额外帮助。嗯,我看到前两个答案与如何部署virtualenv和setup.py包有关。我的案例仅适用于在单个桌面上工作,在这里,我可以手动将常用模块放置在我想要的位置,并且可能手动调整路径,而无需部署本身。也许我可以被说服去做一些更正式的事情,但是目前为这些文件创建一个安装程序似乎有些过分。你打算接受一个答案吗?看到每个答案左边的大勾号了吗?如果没有,请告诉我们您需要什么额外帮助。显然setup.py是为某些包创建部署的一部分。我不想部署本身。。。我对这个问题加了一条评论。好的。嗯,我很高兴
ng难以识别安装软件的当前运行状态,以及我的非正式系统范围软件包是否应该模仿安装软件,或者做一些不同的事情以避开它/它们的方式。4.或者C:\PythonXY\site packages?setup.py是关于开发人员为分发/部署设置模型/包的。最后一个阶段是通过执行..\python setup.py安装来安装模块/etc。如果是您自己的模块/包,请像开发人员一样制作。在任何情况下,都不要随意将文件束复制到站点包中。在部署阶段,我理解正确部署的基本原理,尽管我很难从许多文档页面中分辨出Python 3的部署工具处于何种准备状态。然而,问题中的情况更像这样——我希望通用模块仍然可以开发。假设我有正在开发的项目A、B和C,所有这些项目都称为通用模块myutils.py,该模块也在根据A、B和C中确定的不断变化的需求进行修订。是否有一个合适的位置来定位myutils.py?也许站点包完全不适合这样做,这很公平。关于myutils.py:在您的开发环境中对其进行单元测试。当您对它满足要求感到满意时,发布一个新版本并安装它。然后测试a、b、c的开发版本,请不要使用大写字母。显然setup.py是为某些包创建部署的一部分。我不想部署本身。。。我对这个问题加了一条评论。好的。嗯,我很难辨别安装软件的当前运行状态,以及我的非正式系统范围软件包是否应该模仿安装软件,或者做一些不同的事情来避开它/它们的方式。4.或者C:\PythonXY\site packages?setup.py是关于开发人员为分发/部署设置模型/包的。最后一个阶段是通过执行..\python setup.py安装来安装模块/etc。如果是您自己的模块/包,请像开发人员一样制作。在任何情况下,都不要随意将文件束复制到站点包中。在部署阶段,我理解正确部署的基本原理,尽管我很难从许多文档页面中分辨出Python 3的部署工具处于何种准备状态。然而,问题中的情况更像这样——我希望通用模块仍然可以开发。假设我有正在开发的项目A、B和C,所有这些项目都称为通用模块myutils.py,该模块也在根据A、B和C中确定的不断变化的需求进行修订。是否有一个合适的位置来定位myutils.py?也许站点包完全不适合这样做,这很公平。关于myutils.py:在您的开发环境中对其进行单元测试。当您对它满足要求感到满意时,发布一个新版本并安装它。然后测试你的a、b、c的开发版本,请不要大写。我对你的笔记感兴趣,但链接不再起作用。@a.Donda那些旧笔记可能已经过时了。它仍然是关于导入函数和相关函数(如sys.path)如何应用于手头的问题——由多个程序共享的库,这些程序都在非正式编程场景中并行开发,不打算广泛部署。依我看,对于这个特殊的问题仍然没有一个好的解决方案。一些相关问题得到了改进创建虚拟环境功能随Python 3.x或更混乱的PEP420一起提供,使包模糊-请参阅。我对您的笔记感兴趣,但链接不再起作用。@A.Donda这些旧笔记可能已经过时。它仍然是关于导入函数和相关函数(如sys.path)如何应用于手头的问题——由多个程序共享的库,这些程序都在非正式编程场景中并行开发,不打算广泛部署。依我看,对于这个特殊的问题仍然没有一个好的解决方案。一些相关问题得到了改进创建虚拟环境功能随Python3.x或更混乱的PEP420一起提供,使包变得模糊-请参阅。