gpt4 book ai didi

python - 一个 python 项目有多个包

转载 作者:太空狗 更新时间:2023-10-29 14:21:38 26 4
gpt4 key购买 nike

我正在从单个脚本转向更大的 Python 应用程序。

这是一个包含多个包的应用。

package1->package1/.py文件

package2->package2/.py文件

由于包 1 应该可以单独使用,所以我将其保存在单独的 git 存储库中。我想在 package2 中做:import package1

感觉最简单的方法是将 project1(在其 git 存储库中)放在 project2 的子目录中,但这听起来不是一个好的解决方案。

我发现的一些答案感觉过时了,我无法让它发挥作用。 (python setup.py 安装)

将 package1 位置添加到 PATH 是一种解决方案,但如果我想将其分发给同事,这不是很好。理想情况下,我尽可能轻松地“安装”包。

我读到“pip”是首选,但需要一些指导从哪里开始寻找创建包。此外,分发将仅在本地进行。

(python3.6。代码将在linux和windows上使用。)

最佳答案

摘自有问题的 np8 给出的使用 pip 的优秀(但有点 stash )答案 Importing modules from parent folder :查看他的答案!

--

1) 在根目录下添加一个setup.py

setup.py的内容可以很简单

from setuptools import setup, find_packages

setup(name='myproject', version='1.0', packages=find_packages())

基本上“任何”setup.py 都可以。这只是一个最小的工作示例。

2) 使用虚拟环境

3) pip install 你的项目处于可编辑状态

使用 pip 安装您的顶级包 myproject。诀窍是在安装时使用 -e 标志。这样它就以可编辑的状态安装,对.py文件所做的所有编辑都会自动包含在安装包中。

在根目录下,运行

pip install -e .(注意点,它代表“当前目录”)

也可以看到使用pip freeze安装

关于python - 一个 python 项目有多个包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54564446/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com