第3章 模块

一. 列举python中常用模块及主要功能,越多越好!

"""
基本模块:
    time, datetime: 日期时间处理模块. 提供了3种时间格式: 格式化的字符串时间,结构化的时间, 时间戳
    
    random: 提供了随机数字, 随机打乱有序类型的功能.
    
    os: 提供了与操作系统交互的功能.
    
    sys: 提供了与解释器交互的功能. 具有代表性的就是: sys.path提供了python导入模块时找模块的文件夹路径的环境变量
    
    shutil: 高级的文件,文件夹,压缩包的处理模块,也主要用于文件的拷贝
    
    json, ujson(第三方), pickle: 
        jason提供了让大部分python数据格式能够序列化成json的中间格式, 进而支持不同语言之间的数据的交互.   
        ujson(第三方)可以通过打猴子补丁的方式优化json序列化与反序列化时的存储效率问题.
        pickle提供了python独有的将数据序列化的保存到硬盘的格式, 例如: 可以将python对象保存到硬盘中. 
        
        
    shelve: 实现dump序列化和load反序列化多次
    
    xml: 处理xml语言的文件
    
    configparser: 提供操作指定格式的文件(.ini或者.cnf)
    
    hashlib: 提供了加密功能
    
    subprocess: 用来生成子进程,并可以通过管道连接他们的输入/输出/错误,以及获得他们的返回值。例如: 利用管道执行系统终端命令并拿到返回值
    
    logging: 提供日志功能
    
    re: 提供通过正则匹配删选需要的字符串
    
    functools: 提供wraps装饰器保留被装饰对象的属性. 提供函数式函数reduce合并功能
    
    uuid: 提供了唯一标识

网络类模块:
    socket: 提供了让应用层能与传输层及以下层打交道的方式, 进而实现基于网络通信. 常用的有2种通信方式: 基于TCP, 基于UDP
    struct: 提供了制作打包定长二进制数据, 并将二进制数据解包的功能. 可以用来解决基于TCP通信的粘包问题. 
    socketserver: 使用封装好的功能直接可以开启多进程, 多线程的方式.
    multiprocessing: 用来开启子进程,并在子进程中执行我们定制的任务. 还提供了进程间通信的队列功能.
    threading: 提供了开启线程的操作模式
    queue: 提供了线程的队列功能
    concurrent.futures: 提供了线程池,进程池功能
    genvent(第3方): 提供实现单线程下的协程. 
    select: 提供了实现IO多路复用的功能
    
数据库处理模块: pymysql(第三方)    
"""
posted @ 2020-05-11 20:37  给你加马桶唱疏通  阅读(79)  评论(0编辑  收藏  举报