背景:
当前demo.py 文件,所处目录 D:\py\test\TestCase,需要调用test 目录下的模块,尝试了 新建__init__.py 文件+ import test.模块名的方法,无效.
报错信息:
D:\py\test\TestCase>python demo.py
Traceback (most recent call last):
File "demo.py", line 24, in
from test.logger_base import logger
ImportError: No module named logger_base
解决方案:
要导入上级目录,可以借助 sys.path,把上级目录加到 sys.path 里。
sys.path 作用:当使用import语句导入模块时,解释器会搜索当前模块所在目录以及sys.path指定的路径去找需要import的模块。
添加前2行代码,直接调用模块即可:
1 importsys2 sys.path.append("..")3 from logger_base import logger
运行结果:
引申:如何导入下级目录?
要在下级目录中写一个__init__.py文件?