模块

 什么是模块:

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

但其实import加载的模块分为四个通用类别: 

  1 使用python编写的代码(.py文件)

  2 已被编译为共享库或DLL的C或C++扩展

  3 包好一组模块的包

  4 使用C编写并链接到python解释器的内置模块

 为什么要使用模块

随着程序的发展,功能越来越多,为了方便管理,我们通常将程序分成一个个的文件,这样做程序的结构更清晰,方便管理。这时我们不仅仅可以把这些文件当做脚本去执行,还可以把他们当做模块来导入到其他的模块中,实现了功能的重复利用,

如何使用模块

1.import....

一个py文件就可以作为一个模块

模块的导入:直接导入文件的名字,不需要带着后缀

模块中的函数调用:模块名.函数名()

导入模块的时候做了三件事:1.首先开辟了一个新的命名空间my_moudle

             2.执行了my_moudle内的代码

             3.将my_moudle里面的名字和命名空间绑定在一起了

注意:模块在一个程序中只会被导入一次,不会重复导入(为了节约资源)那么,如何实现模块在程序中只会被导入一次呢?

当导入一个文件之后,会将模块存储在内存中,当再次导入的时候,就会到内存中查看是否导入过这个模块,如果已经导入过了,就不用再导入了。是通过sys里面的module方法

import sys
for i in sys.modules:  #查看是否导入过这个模块
    print(i)

导入的模块有自己的命名空间(可以给导入的模块起一个别名,就产生了一个命名空间,这个命名空间只和别名相关)

import  my_moudle  as mm<br>print(mm.money)
1 #mysql.py
 2 def sqlparse():
 3     print('from mysql sqlparse')
 4 #oracle.py
 5 def sqlparse():
 6     print('from oracle sqlparse')
 7 
 8 #test.py
 9 db_type=input('>>: ')
10 if db_type == 'mysql':
11     import mysql as db
12 elif db_type == 'oracle':
13     import oracle as db
14 
15 db.sqlparse() 
别名

相关文章:

  • 2022-12-23
猜你喜欢
相关资源
相似解决方案