Python中奇怪的双重模块导入

2024-10-04 07:30:04 发布

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

运行https://github.com/Natureshadow/muris提供的代码会发现Python中有一种奇怪的行为,我不理解。你知道吗

可以通过将src/放入PYTHONPATH并运行src/muris/init.py来运行代码。你知道吗

所发生的情况是src/muris/init.py中的代码执行了两次,就好像它是从代码的其他部分包含的一样,但它不是

使用Python跟踪模块进行跟踪muris.modules.形容词两次进口。你知道吗

为什么会这样?你知道吗


Tags: 模块代码pyhttpssrcgithubcommodules
1条回答
网友
1楼 · 发布于 2024-10-04 07:30:04

解释器执行的Python脚本没有加载到模块系统中。在本例中,主脚本也是顶级的init.py。当导入任何子模块时,将重新执行此操作。你知道吗

所有只在启动时运行的代码都必须用

if __name__ == '__main__':

相关问题 更多 >