我有一个Python项目,其中包含三个组件:主要可执行脚本,这些脚本所依赖的模块,以及这些脚本操作的数据(sqlite3数据库,平面文件等)。顶级有一个__init__.py
文件,以便其他程序也可以根据需要从模块中借用。
问题是,将我的项目移动到默认的site-packages目录中是更“Pythonic”还是“更正”,或者修改PYTHONPATH以在项目上方包含一个目录(以便可以从中导入项目) ?一方面,我所描述的并不是严格意义上的“包”,而是一个带有可被视为包的数据的“项目”。所以我倾向于修改PYTHONPATH的方向(毕竟,PYTHONPATH必须存在是有原因的,对吗?)
答案 0 :(得分:1)
绝对不要将你的项目添加到site-packages这会破坏你的系统Python安装,并且会在其他应用程序到来时重新启动,或者你需要安装一些东西。
最后有两种流行的选择以隔离的方式安装python应用程序
请参阅virtualenv项目。它允许
activate
之后,您可以运行pip install
等等,这只会影响给定的virtualenv安装。activate
)zc.buildout
此包提供命令buildout
。有了这个,您可以使用特殊的配置文件,这允许使用所有包和脚本创建本地python环境。
virtualenv
今天似乎更受欢迎,我觉得学习和使用更容易zc.buildout
可能也适合你,但要为更长的学习时间做好准备virtualenv
已提供的内容