zoukankan      html  css  js  c++  java
  • re模块day17课堂小结

    上节课回顾

    os模块

    与操作系统交互

    sys模块

    与python解释器交互

    json模块

    跨平台数据交互,json串

    pickle模块

    存储python所有类型的数据,为了python文件和python文件的交互

    logging模块

    日志记录

    今日所学

    1. 包 == 模块,包也是拿来导入用的
    2. 包是含有__init__.py的文件夹;导包就是导入__init__
    3. 包一定是被当做模块文件导入,模块文件m1.py/m2.py的搜索路径以执行文件的路径为准

    time模块

    提供了三种不同类型的时间(最主要为时间戳),三种不同类型的时间可以互相转换

    # 时间戳形式
    print(time.time()) 
    # 格式化时间
    print(time.strftime('%Y-%m-%d %X'))
    # 结构化时间
    print(time.localtime())
    

    time.sleep() 让程序睡觉几秒

    datetime模块

    时间的加减

    import datetime
    
    now = datetime.datetime.now()
    print(now)
    
    # 默认3天
    print(now + datetime.timedelta(3))
    # 加3周
    print(now + datetime.timedelta(weeks=3))
    # 加3小时
    print(now + datetime.timedelta(hours=3))
    # 减3小时
    print(now - datetime.timedelta(hours=3))
    

    random模块

    随机数

    random.random()

    0-1的数

    random.randint(1,3)

    1-3的整数

    lt=[1,2,3]
    random.shuffle(lt)# 打乱列表
    random.choice(lt)# 随机选择一个
    

    random.seed()

    只随机一次

    hashlib模块和hmac模块

    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())
    

    typing模块

    与函数联用,控制函数参数的数据类型,提供了基础数据类型之外的数据类型

    requests模块

    一般用于爬虫,用来爬取数据,模拟浏览器对url发送请求拿到数据

    #用法
    import requests
    res=requests.get(url)
    data=res.text
    print(data)
    

    re模块

    去字符串找符合某种特点的字符串

    #查找所有
    findall
    # ^:以...开头
    res = re.findall('^ab', s)
    print(res)
    res = re.findall('^bc', s)
    print(res)
    # $: 以..结尾
    s = 'abcdabc'
    res = re.findall('bc$', s)
    print(res)
    
    # .: 任意字符
    s = 'abc红abc'
    res = re.findall('abc.', s)
    print(res)
    
    # d: 数字
    s = 'skld2342ljk'
    res = re.findall('d', s)
    print(res)
    
    # w: 非空,数字字母下划线
    s = 'skld_23 42ljk'
    res = re.findall('w', s)
    print(res)
    
    # s:空,空格/	/
    
    s = 'skld_23 42ljk'
    res = re.findall('s', s)
    print(res)
    
    # D: 非数字
    s = 'skld2342ljk'
    res = re.findall('D', s)
    print(res)
    
    # W: 空
    s = 'skld_23 42ljk'
    res = re.findall('W', s)
    print(res)
    
    # S:非空
    s = '
  • 相关阅读:
    学指令 emacs篇
    c 排序 总结
    C# WinForm源码下载
    PetShop下载
    Visual Studio常用技巧
    人事信息管理系统(PMS)
    css实现细表格原理
    GridView导出Excel/Word
    dotnet程序员装机必备工具
    容器练习一
  • 原文地址:https://www.cnblogs.com/shin09/p/11604805.html
Copyright © 2011-2022 走看看