Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
导入python模块,通过_init__.py脚本_Python_Import - Fatal编程技术网

导入python模块,通过_init__.py脚本

导入python模块,通过_init__.py脚本,python,import,Python,Import,我的目录结构是 app.py lib __init__.py _foo.py 在\uuuu init\uuuuuuuy.py内部,我已经编写了 来自。将\u foo作为foo导入 然后在app.py里面我试着打个电话 从lib.foo导入* 但它抛出ModuleNotFoundError:没有名为'lib.foo'的模块exception 基本上,我想通过\uu init\uuuuuuuuuuuupy脚本导入所有内容。 虽然我意识到如果\u foo.py被重命名为foo.py,

我的目录结构是

app.py
lib
   __init__.py
   _foo.py
\uuuu init\uuuuuuuy.py
内部,我已经编写了

来自。将\u foo作为foo导入
然后在app.py里面我试着打个电话

从lib.foo导入*
但它抛出
ModuleNotFoundError:没有名为'lib.foo'的模块
exception

基本上,我想通过
\uu init\uuuuuuuuuuuupy
脚本导入所有内容。 虽然我意识到如果
\u foo.py
被重命名为
foo.py
,代码是有效的,
我仍然想知道是否有任何方法可以通过
\uuuu init\uuuu.py

使导入工作正常,但不确定是否要绕过导入语句,但您可以通过一些不太明确的方式来解决:

lib/\uuuu init\uuuuu.py

import sys
from lib import _foo

sys.modules['lib.foo'] = _foo
test = 1
来自。将\u foo作为foo导入
__全部u u=['foo']
lib/\u foo.py

import sys
from lib import _foo

sys.modules['lib.foo'] = _foo
test = 1
\uuuuuuuuuuuuuuuuuuuuuuuuuu=[
“测试”
]
测试=1
lib/\u foo.py

import sys
from lib import _foo

sys.modules['lib.foo'] = _foo
test = 1
保持
lib/\uuuu init\uuuu.py
使lib成为一个模块

导入应用程序
lib后,foo
将成为可用模块

>>> import app
>>> from lib import foo
>>> foo
<module 'lib._foo' from '/path/to/test/lib/_foo.py'>
>>> foo.test
1
导入应用程序 >>>从lib导入foo >>>福 >>>食物测试 1.
谢谢你把我介绍给
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu