python之导入

作者: 五娃儿 | 来源:发表于2017-09-06 16:55 被阅读19次

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

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

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

    官网描述:

    官网原文

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

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

    目录结构

    调用与父目录同级的目录下的文件,即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里的语句是失效的

    错误的实例化位置图

    相关文章

      网友评论

      • 倔强的潇洒小姐:__init__.py文件是通过复制吗
        Tester_miao:可以自己创建一个__init__.py文件,空的也没关系,系统就会把Configs当成一个包,就可以被导入了

      本文标题:python之导入

      本文链接:https://www.haomeiwen.com/subject/fdjvjxtx.html