繁体   English   中英

import __foo__是否从foo包的__init__文件导入?

[英]Does import __foo__ import from the __init__ file of the foo package?

我一直在阅读一些使用以下导入语句的代码:

import __ompc__

当我尝试grep查找正在导入的内容时,我发现的是:

me@Bedrock1:~/Projects/PythonProjects/ompc$ grep -r "__ompc__" ./*
./build/lib.linux-x86_64-2.7/ompclib/m_compile.py:import __ompc__
./build/lib.linux-x86_64-2.7/ompclib/m_compile.py:        codeobject =    __ompc__.compile(codestring, dfile or file,'exec')
./build/bdist.linux-x86_64/egg/ompclib/m_compile.py:import __ompc__
./build/bdist.linux-x86_64/egg/ompclib/m_compile.py:        codeobject =    __ompc__.compile(codestring, dfile or file,'exec')
Binary file ./build/bdist.linux-x86_64/egg/ompclib/m_compile.pyc matches
./ompclib/m_compile.py:import __ompc__
./ompclib/m_compile.py:        codeobject = __ompc__.compile(codestring, dfile or file,'exec')

由于使用__ompc__来查找名为“ compile ”的方法,因此我对此进行了递归grep。 我发现在./ompc/ompc目录中的__init__.py文件有一个编译方法。

这是什么

import __ompc__

可以访问? 还是这里发生了我不理解的事情?

我实际上无法使ompclib/m_compile.py 工作 ompc/m_compile.py 几乎是同一文件,但ompc代码库实际上使用了ompc

我的结论是,该文件以及整个ompclib 目录可能是早期开发阶段的遗留物,而作者只是忘了清理它。

import __ompc__导入只不过是一个损坏的导入。 它不会神奇地转变为导入ompc包。 ompc/m_compile.py确实可以使用,而是使用import ompc

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM