zoukankan      html  css  js  c++  java
  • python--模块导入与执行

    定义:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀。

    一、模块注意:

    1.所有的模块都应该自觉的往上写
    
    2.调用模块的时候都是最先在本地找
    
    3.写模块的顺序是:内置模块-->扩展模块-->自定义模块
    注意事项 

    二、模块的几种写法:

    import:
    1.import 模块名    调用:模块名.变量名         # 这种方式和本文件中的变量名完全不冲突
    
    2.import 模块名 as 重命名的模块名            # 提高代码的兼容性
    
    3.import 模块1,模块2
    import导入方式
    from import:
    1.from 模块名 import 变量名              #直接使用 '变量名()' 就可以完成操作 如果本文件中有相同的变量名会发生冲突2.from 模块名 import 变量名字 as 重命名变量名
    3.from 模块名 import 变量名1,变量名2
    4.from 模块名 import *                  #模块中的所有变量名都放到内存中  # 如果本文件中有相同的变量名会发生冲突
    5.from 模块名 import * 和 __all__ 是一对
                                           # 没有这个变量,就会导入所有的名字
                                           # 如果有all 只导入all列表中的名字
    from import 导入方式
    # __name__
    # 在模块中 有一个变量__name__,
    # 当我们直接执行这个模块的时候,__name__ == '__main__'
    # 当我们执行其他模块,在其他模块中引用这个模块的时候,这个模块中的__name__ == '模块的名字'
    三、模块执行过程
    文件
    import demo
    def read():
        print('my read func')
    demo.read()
    print(demo.money)
    先从sys.modules里查看是否已经被导入
    如果没有被导入,就依据sys.path路径取寻找模块
    找到了就导入
    创建这个模块的命名空间
    执行文件,把文件中的名字都放到命名空间里
    模块判断执行过程
    
    
  • 相关阅读:
    Spring框架构造注入的属性问题type属性
    Spring框架AOP添加日志记录功能
    Spring框架构造注入
    Spring框架AOP原理
    Spring框架构造注入的顺序问题index属性
    Spring框架使用P命名空间进行注入
    工作中的SQL脚本
    spring框架ioc设置注入小demo
    [笔试] C和C++动态内存分配和释放的区别
    [算法] 当今世界最为经典的十大算法投票进行时
  • 原文地址:https://www.cnblogs.com/zzy-9318/p/8270390.html
Copyright © 2011-2022 走看看