• python导入模块


    1、模块的定义:
    模块定义:用来逻辑上组织python代码(变量、函数、类、逻辑;目的是:实现一个功能),本质就是.py结尾的python文件。

    补充:
    包的定义:用来从逻辑组织模块的,本质就是一个目录(必须带有一个__init__.py文件)
    2、导入方法:

    导入模块的方法:
    1.import module_name 导入一个模块
    使用的时候需要加上前缀module_name.name
    2.import module_name,module2_name 导入多个模块
    3.from module_name import * 导入module_name模块里边的所有变量,不建议使用!
    4.from module_name import name 只导入module_name里边的name解释了一遍。
    使用的时候直接 name 调用即可
    import 和from 的区别
    1.import 的时候 module_name.logger()
    2.from 的时候 logger() 直接执行;from的时候等于把所有代码都复制了一份,执行一下。

    解释器:做的事就是指定一个变量 并指向一个内存地址,将代码内容放在了内存地址里边。

    导入包的方法:
    import 包的名字

      多级目录导入方法:
      查看当前路径:
      import sys
      sys.path
      查找父及目录
      import os
      os.path.abspath(__file__)
      abspath() 当前文件的绝对路径
      __file__ 当前文件的文件名
      os.path.dirname(os.path.abspath(__file__))
      dirname() 获取目录名
      os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
      路径加入
      sys.path.append() 这样会把路径加入到python系统路径列表的最后,不利于快速查找。
      sys.path.insert() 这样就会把路径加入到python系统路径列表的最前边。
      例子:
      import sys,os
      print(sys.path)
      a = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
      sys.path.insert(a)
      print(sys.path)
      from xxx import xxx

    3、import本质(路径搜索和搜索路径)

      导入模块的本质: 就是把python文件解释一遍
      分析:import module_name - - -》就是要解释module_name.py- - -》首先要找到module_name.py的位置- - -》查找系统路径sys.path,当前路径优先。

      导入包的本质:就是执行该包下的__init__.py文件

      导入包下边的test1.py文件
      1.修改__init__.py文件,导入包下边的py文件
      from . imprt test1
      #import test1
      2.在py文件中导入包下边的模块test1.py文件

    4、导入优化
    例如:
    优化前:
        module_test.py
                def test():
                    print ("in the test!")
            test.py
                import module_test
                def logger():
                    module_test.test()
                    print("in the logger!")
                def search():
                    module_test.test()
                    print("in the search!")
    View Code 
        优化后:
     module_test.py
                def test():
                    print ("in the test!")
            test.py
                from module_test import test
                def logger():
                    test()
                    print("in the logger!")
                def search():
                    test()
                    print("in the search!")
    View Code
        注意:
    如果导入模块的方法和目前环境中有冲突,导入的时候可以设置别名:
    from module_test import test as test01
  • 相关阅读:
    html position定位
    设置input标签的placeholder的样式
    由于html元素加载导致的问题
    js setInterval参数设置
    .mht文件转换为html
    js异步导致的错误
    Premiere入门1 —— PR的下载、安装与优化
    Photoshop入门1 —— PS的下载、安装与优化
    Python正课25 —— 文件处理
    Python问题集
  • 原文地址:https://www.cnblogs.com/yangdonghao/p/7921468.html
Copyright © 2020-2023  润新知