在哪里手动安装python文件

我在一个更大的项目中遇到了setuptools的问题,其中
python包必须从几个debian包“构造”(每个包含一个“main”包的子包).因此我们决定手动安装文件而不是使用“setup.py install”,但我们不确定要使用的位置.我们首先在/usr/share中使用了一个目录,我们已经将其用于我们安装的其他内容.除了我们在开始任何应用程序之前必须使用PYTHONPATH这一事实之外,这种方法很好.

是否有任何位置在默认的sys.path中我们可以安装软件包?我在考虑/usr/lib/python2.6/dist-packages(这也是你使用setuptools时文件应该结束的地方,不管他们吗?),但是我不太喜欢写一个像这样的地方这与自定义安装脚本…另外,如果Ubuntu切换到2.7,我们必须移动吗?任何“最佳实践”如何做这样的事情?整个网站包/ dist-packages概念是如此记录不足:(

最佳答案 考虑到实际上您可以在任何地方安装它,很难说您需要安装
Python软件包的位置.我认为最好的地方是将它们放入/usr/local/share / YOURPACKAGENAME,以防它没有被apt-get(aptitude等…)安装.在任何一种情况下,你都必须在你的python脚本周围创建一个小包装器,它将你的包所在的路径插入到“sys.path”变量中.例如,Ubuntu的“yum”默认将其文件放入“/usr/share / yum-cli”,“/usr/bin/yum”脚本包含以下行:

#!/usr/bin/python

...

sys.path.insert(0, '/usr/share/yum-cli')
try:
    import yummain
    yummain.user_main(sys.argv[1:], exit_code=True)
except KeyboardInterrupt, e:
    ...

或者,您必须设置PYTHONPATH环境变量.没有什么不妥.

点赞