如何在不同的virtualenv中运行具有模块的代码?

2024-04-23 11:58:21 发布

您现在位置:Python中文网/ 问答频道 /正文

短篇小说:

我有一个非常大的python项目

它包括
ServiceAServiceBServiceC等等

对于模块化,每个服务都有自己的虚拟环境。
每个服务都需要来自其他服务的一些foo()

ServiceA确实import package_a
ServiceB确实import package_b
ServiceC确实import package_c
等等

我不想为所有服务创建一个单一的环境,因为这会使维护非常麻烦

在保持模块化的同时,集成这样一个项目以协同工作的好方法是什么


说来话长:

我有一个非常大的项目,有25个以上的大模块,可以相互通信。
对于所有依赖项,它们都使用一个非常大的环境

升级一个模块中的包可能(而且经常)破坏其他模块。
Pycharm的索引也需要更长的时间。
在一台新机器上安装软件包所需的时间远远超过其应有的时间
最糟糕的当然是对升级的恐惧,因为破坏一切的机会增加了

大多数模块只需要所有已安装软件包的一个子集

所有这些都在Python2.7中,我们希望升级到Python3,但由于项目规模的原因,这不能一次完成。
我们必须一次迁移一个模块,同时为了业务目的和测试能力目的维护系统功能

我相信这将需要一些模块拥有自己的解释器,同时还要以某种方式和其他模块一起工作


怎样才能做到呢


Tags: 模块项目方法import目的机器package环境
1条回答
网友
1楼 · 发布于 2024-04-23 11:58:21

我认为Pycharm中没有术语“模块”,如下面的屏幕截图所示。 我们可以做的是在项目下添加多个文件夹。 但是,python解释器只能绑定到项目,而不是每个文件夹

Pycharm ScreenShot

相关问题 更多 >