Python初学者在这里,所以如果这个问题有一个简单的答案,我很抱歉。(我希望确实如此。)
我正在开发一个 python 模块——一个更大程序的插件。我正在尝试使用 Eclipse IDE(使用 pydev)开发模块,这意味着我需要能够独立运行该模块,即不能作为更大程序的插件。
实际上,我自己已经整理出了很多毛茸茸的细节,其中大部分涉及创建一种“线束”,它以模拟(从插件的角度)从我的 IDE 启动插件的方式从在其真实的操作环境中。
但有一件事让我无法理解。当模块从它的“真实”环境中运行时,它以某种方式在其 dir() 结果中已经定义了某个名称(称为“Bob”)。当我在自己的环境中运行它时,除非我手动加载它,否则“Bob”不会出现在 dir() 中。
自然地,如果我编写代码手动加载“Bob”只是为了让插件在我的 IDE 中工作,那么当插件“真正”运行时会干扰插件。我需要帮助的是: 如何让我的插件在“Bob”已经加载的情况下启动(通过我的启动工具)?
天真地,我有点希望能够以某种方式“强制”插件以某种方式导入“Bob”,而实际上不必将“import Bob”添加到插件本身。但我愿意接受更好的建议......?