python之导入

【问题1】、如何查看python编辑器搜索模块路径?

print  sys.path,如果导入模块的路径不存在输出的结果中,可以append将其加入其中

查找顺序 py模块所在的目录-> py模块所在的根目录->python的安装路径

官网描述:

python之导入_第1张图片

官网原文

【备注】:当在顶层导入模块时,其作用域是全局的,在函数内部导入模块,作用域是局部的,即只能在导入的函数内部使用

2、如图所示,问在MysqlDB.py中使用导入log.py这个模块?

python之导入_第2张图片

目录结构

调用与父目录同级的目录下的文件,即OperationDb.py调用log.py,从目录结构上来说,OperationDb是要调用上级目录的同级目录下的模块(MysqlDB与Configs属于同级)

解决方式:在Configs目录下添加__init__.py文件,并添加from Configs.log import *

在 OperationDb 中导入log,即from Configs import mylogger (mylogger是log模块中的类的实例化)

3、按照如上操作后,依旧提示找不到myloger

解决方式:实例化的位置写错了(应写在if外面),在模块被其他模块导入时,被导入模块的main里的语句是失效的

python之导入_第3张图片
错误的实例化位置图

你可能感兴趣的:(python之导入)