zoukankan      html  css  js  c++  java
  • Python中的模块(2)

    1。内置模块
    2。扩展的 例如:django
    3。自定义的

    文件
    import demo
    def read():
    print('my read func')
    demo.read()
    print(demo.money)

    先从sys.modules里查看是否已经被导入
    如果没有被导入,就依据sys.path路径取寻找模块
    找到了就导入
    创建这个模块的命名空间
    执行文件,把文件中的名字都放到命名空间里



    import sys
    print(sys.modules.keys())
    print(sys.path)

    import time as t
    print(t.time())

    import *** as ***用于:
      oracle
      mysql
      if 数据库 == ‘oracle’:
      import oracle as db
      elif 数据库 == ‘mysql’:
       import mysql as db
      连接数据库 db.connect
      登录认证
      增删改查
      关闭数据库
    像是数据库这种的,可以通过匹配选择as ***最终用一个变量名来执行就可以。

    所有的模块导入都应该尽量往上写
    内置模块
    扩展模块
    自定义模块
    模块不会重复被导入 : sys.moudles
    从哪儿导入模块 : sys.path

    mport 模块名
    模块名.变量名 和本文件中的变量名完全不冲突
    import 模块名 as 重命名的模块名 : 提高代码的兼容性
    import 模块1,模块2

    from 模块名 import 变量名
    直接使用 变量名 就可以完成操作
    如果本文件中有相同的变量名会发生冲突

    from 模块名 import *
    将模块中的所有变量名都放到内存中
    如果本文件中有相同的变量名会发生冲突

    from 模块名 import * 和 __all__ 是一对
    没有这个变量,就会导入所有的名字
    如果有all 只导入all列表中的名字

    __name__
    在模块中 有一个变量__name__,
    当我们直接执行这个模块的时候,__name__ == '__main__'
    当我们执行其他模块,在其他模块中引用这个模块的时候,这个模块中的__name__ == '模块的名字'
  • 相关阅读:
    Python常用模块之sys
    python操作zip文件
    python的os模块
    [Python模块学习]用qrcode模块生成二维码
    os模块os.walk() 方法和os.path.join()的简单使用
    python操作redis详解
    成员变量和局部变量
    类和对象 引用属性和方法举例
    Java String字符串/==和equals区别,str。toCharAt(),getBytes,indexOf过滤存在字符,trim()/String与StringBuffer多线程安全/StringBuilder单线程—— 14.0
    泛型--面向对象8
  • 原文地址:https://www.cnblogs.com/qunxiadexiaoxiangjiao/p/8270252.html
Copyright © 2011-2022 走看看