首页 > 代码库 > python基础7之python中常用的模块的总结
python基础7之python中常用的模块的总结
本节大纲:
- 模块和包
- time &datetime模块
- random
- os
- sys
- shutil
- json & picle
- shelve
- xml处理
- yaml处理
- configparser
- hashlib
- subprocess
- logging模块
- re正则表达式
一、 模块和包 |
a.定义:
模块用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能),本质就是.py结尾的python文件。(例如:文件名:test.py,对应的模块名:test)
包:用来从逻辑上组织模块的,本质就是一个目录(必须带有一个__init__.py的文件)
b.导入方法
import module_name
import module_1的本质:是将module_1解释了一遍
也就是将module_1中的所有代码复制给了module_1
from module_name1 import name
本质是将module_name1中的name变量放到当前程序中运行一遍
所以调用的时候直接print(name)就可以打印出name变量的值
模块module_1.py代码:
1 name = "susu" 2 def say_hello(): 3 print("hello %s" %name) 4 调用模块的python程序main代码如下:(切记调用模块的时候只需要import模块名不需要加.py) 5 import module_1 6 7 #调用变量 8 print(module_1.name) 9 10 #调用模块中的方法 11 module_1.say_hello()
import module_name1,module_name2
from module_name import *(这种方法不建议使用)
from module_name import logger as log(别名的方法
c.导入模块的本质就是把python文件解释一遍
import module_name---->module_name.py---->module_name.py的路径---->sys.path
导入包的本质就是执行该包下面的__init__.py
关于导入包的一个代码例子:
新建一个package_test包,并在该包下面建立一个test1.py的python程序,在package包的同级目录建立一个p_test.py的程序
test1的代码如下:
1 def test(): 2 print("int the test1")
package_test包下的__init__.py的代码如下:
1 #import test1 (理论上这样就可以但是在pycharm下测试必须用下面from .import test1) 2 from . import test1 3 print("in the init")
p_test的代码如下:
1 import package_test #执行__init__.py 2 package_test.test1.test()
这样运行p_test的结果:
1 D:\python35\python.exe D:/python培训/s14/day5/p_test.py 2 in the init 3 int the test1 4 5 Process finished with exit code 0
从上述的例子中也可以看出:导入包的时候其实是执行包下的__init__.py程序,所以如果想要调用包下面的python程序需要在包下的__init__.py导入包下面的程序
c.模块的分类
- 自定义模块
- 内置标准模块(又称标准库)
- 开源模块
自定义模块 和开源模块的使用参考 http://www.cnblogs.com/wupeiqi/articles/4963027.html
python基础7之python中常用的模块的总结