zoukankan      html  css  js  c++  java
  • 8.19(day18)numpy,pandas,matplotlib模块

    复习

    一个模块aaa.py中方法太多了, 所以分成多个文件m1.py, m2.py, 把m1.py和m2.py放到名字为aaa的包(含有init文件的文件夹叫包)里

    导入aaa包就是导入init, 所以往init里面加入一个f1()

    import aaa
    aaa.f1()
    
    
    import aaa
    aaa.f1()
    
    
    # aaa/init.py
    from aaa.m1 import f1
    

    搜索路径以执行文件为准,也就说执行文件run能找到谁,init就只能找到谁

    相对路径: 打破了搜索路径的这种规则,不需要以执行文件的搜索路径为准

    1. .表示当前路径
    2. ..表示上一层

    绝对路径: 写死路径

    time模块

    打印三种不同格式的时间

    time.time()  # 打印当前时间(秒)
    
    time.sleep()  # 睡眠
    

    datetime模块

    修改时间

    datetime.datetime.now() + datetime.timedelta(3)
    

    hashlib模块

    加密

    m = hashlib.md5()
    m.update(b'hello')
    m.update(b'hello')
    print(m.hexdigest())
    
    
    m = hashlib.md5()
    m.update(b'hellohello')
    print(m.hexdigest())
    
    1. 结果永远都是相同长度的字符串
    2. 叠加性

    hmac模块

    加密, 加盐处理

    m = hmac.new(b'123')
    m.update(b'hellow')
    print(m.hexdigest())
    

    json模块

    1. 序列化: 将python的数据类型存成 json串
    2. 反序列化: 将json串 读成python的数据类型

    跨平台

    dict/list

    dic = {'a':1}
    
    # 内存中转化
    data = json.dumps(dic)
    data = json.loads(data)
    
    # 文件中转化
    with open() as fw:
        json.dump(dic, fw)
    with open() as fr:
        data = json.load(fr)
    

    pickle模块

    不能跨平台,但是支持python所有数据类型

    dic = {'a':1}
    
    # 内存中转化
    data = pickle.dumps(dic)
    data = pickle.loads(data)
    
    # 文件中转化
    with open() as fw:
        pickle.dump(dic, fw)
    with open() as fr:
        pickle = json.load(fr)
    

    os模块

    用来和操作系统交互

    os.path.join()  # 拼接地址
    os.path.listdir()  # 列出文件夹内的所有文件
    os.path.dirname()  # 获取上一级目录
    os.path.abspath()  # 获取文件的绝对路径
    os.path.exists()  # 文件是否存在
    

    sys模块

    用来和python解释器交互

    sys.argv # 用cmd执行python文件的时候获取参数
    
    
    sys.path # 获取环境变量
    
    

    logging模块

    import logging
    
    # 1. 生成logger对象
    logger = logging.getLogger('nick')
    logger1 = logging.getLogger('jason')
    
    # 2. 格式
    formmater1 = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s -%(module)s:  %(message)s',datefmt='%Y-%m-%d %H:%M:%S %p',)
    formmater2 = logging.Formatter('%(asctime)s :  %(message)s',datefmt='%Y-%m-%d %H:%M:%S %p',)
    formmater3 = logging.Formatter('%(name)s %(message)s',)
    
    # 3. 打印对象
    h1 = logging.FileHandler('h1.log')
    sm = logging.StreamHandler()
    
    # 4. 打印对象绑定格式
    h1.setFormatter(formmater1)
    sm.setFormatter(formmater2)
    
    # 5. logger绑定打印对象
    logger.addHandler(h1)
    logger.addHandler(sm)
    
    # 6. 设置级别
    logger.setLevel(50)
    
    logger.debug('debug')
    logger.info('info')
    logger.warning('warning')
    logger.error('error')
    logger.critical('critical')
    
    

    numpy模块

    numpy数组(矩阵)的运算, 科学运算, tensorflow

    pandas模块

    文件(excel)的处理

    read_excel()/to_excel()

    matplotlib模块

    画图, plt.plot()/plt.bar()/plt.scatter()/plt.hist()/plt.pie()

  • 相关阅读:
    数据提交方式:post和get
    什么是SQL注入式攻击和如何防范?
    CSS3 @keyframes 规则
    php数据库连接及简单操作
    深入理解CSS过渡transition
    css 选择器
    利用border制作三角形原理
    iOS 8 自适应 Cell
    dSYM 文件分析工具
    iOS开发使用半透明模糊效果方法整理
  • 原文地址:https://www.cnblogs.com/jiann/p/11529046.html
Copyright © 2011-2022 走看看