您可以很安全地将C ++代码放入拥有它的python包中。在示例中的“ bar”目录中具有“ foo”目录。这将使打包最终的python模块更加容易。
我绝对会尝试以“包装”来考虑事物,其中独立的部分是独立的。所有独立的部分都生活在同一级别上。如果一个部分依赖于另一个,则从同一级别从其相应的“包”中导入。这就是依赖项通常的工作方式。
我不会将一个包含在内,因为一个并不严格属于另一个。如果启动了第三个需要“ foo”但不需要“ bar”的项目该怎么办?
我会将“ foo”和“ bar”软件包都放在同一个“项目”目录中(而且我可能会给每个软件包它自己的代码存储库,以便可以轻松维护和安装每个软件包)。