首页 > 其他分享 >第三次本周总结

第三次本周总结

时间:2022-10-30 20:33:27浏览次数:40  
标签:总结 wb4 匹配 第三次 res 本周 re 模块 append

目录

本周总结

正则表达式

前戏

校验一串字符是否是自己需要的,例如手机号校验

字符组

[0123456789]

[0-9]

[a-z]

[A-Z]

[0-9a-zA-Z]

特殊符号

.		匹配除换行符以外的所有字符
\w		字母数字下划线
\W		除了字母数字下划线
\d		匹配数字
^		匹配字符串的开头
$		匹配字符串的结尾
		两者结合使用可以非常精确的限制匹配的内容
a|b		匹配a或b(或)
()		给正则表达式分组,不影响表达式的匹配功能
[]		字符组,内部填写的内容默认都是或的关系
[^]		取反操作,匹配除了字符组里面的其他所有字符
		注意上尖号在中括号内和中括号外意思完全不同

量词

*		匹配零次或多次
+		匹配一次或多次
?		匹配零次或一次,主要用于非贪婪匹配
{n}		重复n次
{n,}	重复n次或更多次
{n,m}	重复n次到m次
ps:量词必须结合表达式一起使用 不能单独出现 并且只影响左边第一个表达式

贪婪匹配与非贪婪匹配

量词都默认贪婪匹配,加?之后变非贪婪匹配

转义符

\\n \n

\\\n \\n

python里可以在前面加r取消转义

实战建议

只要懂得逻辑就行,别人已经写好了,要看懂

re模块

import re

re.findall  # 查找所有符合正则表达式要求的数据,结果返回一个列表
re.finditer  # 查找所有符合正则表达式要求的数据,结果返回一个迭代器对象
re.search  # 匹配到一个符合条件的数据就立刻结束
re.match  # 匹配字符串的开头 如果不符合后面不用看了
re.compile  # 当某一个正则表达式需要频繁使用的时候 我们可以做成模板
re.split  # 分割
re.sub  # 替换数字,可设定个数
re.subn  # 替换数字并返回替换了多少次,返回元组
res = re.findall('www.(baidu|oldboy).com', 'www.oldboy.com')
print(res)  # ['oldboy'] findall分组优先展示:优先展示括号内正则表达式匹配到的内容
# 2.分组别名
res4 = re.search('www.(?P<content>baidu|oldboy)(?P<hei>.com)', 'www.oldboy.com')

爬虫简介

网络爬虫:通过编写代码模拟浏览器发送请求获取数据并按照自己指定的要求筛选出想要的数据

第三方模块的下载与使用

别人写的模块 一般情况下功能都特别强大
如果想使用 要先下载再导入
1.pip工具
	版本名字
2.下载句式
	pip install 模块名==版本号 -i 仓库地址
3.pycharm提供快捷方式
4.报错百度

requests模块


import requests
res.get(网址)
res.encoding = 'utf8'  # 指定编码
print(res.text)

openpyxl模块

'''学会看官方文档'''

from openpyxl import Workbook
# 创建一个excel文件
wb = Workbook()
# 在一个excel文件内创建多个工作簿
wb1 = wb.create_sheet('学生名单')
wb2 = wb.create_sheet('舔狗名单')
wb3 = wb.create_sheet('海王名单')
# 还可以修改默认的工作簿名称
wb4 = wb.create_sheet('富婆名单', 0)
# 还可以二次修改工作簿名称
wb4.title = '高富帅名单'
wb4.sheet_properties.tabColor = '1072BA'

# 填写数据的方式1
wb4['F4'] = 666
# 填写数据的方式2
wb4.cell(row=3, column=1, value='jason')
# 填写数据的方式3
wb4.append(['编号', '姓名', '年龄', '爱好'])  # 表头字段
wb4.append([1, 'jason', 18, 'read'])
wb4.append([2, 'kevin', 28, 'music'])
wb4.append([3, 'tony', 58, 'play'])
wb4.append([4, 'oscar', 38, 'play'])
wb4.append([5, 'jerry', 'play'])
wb4.append([6, 'tony', 88, 'play', '哈哈哈'])

# 填写数学公式
wb4.cell(row=12, column=1, value=12321)
wb4.cell(row=13, column=1, value=3434)
wb4.cell(row=14, column=1, value=3455)
wb4.cell(row=15, column=1, value=65647)
wb4['A16'] = '=sum(A12:A14)'
wb4.cell(row=6, column=6, value='=sum(A12:A14)')

# 保存该excel文件
wb.save(r'111.xlsx')

hashlib加密模块

加密算法基本操作
    import hashlib
    # 1.选择加密算法
    md5 = hashlib.md5()
    # 2.传入明文数据
    md5.update(b'hello')
    res = md5.hexdigest()
    print(res)  # 5d41402abc4b2a76b9719d911017c592
1.加密算法不变 内容如果相同 那么结果肯定相同
2.加密之后的结果是无法反解密的
3.加盐处理
4.动态加盐
5.	1.用户密码加密
    2.文件安全性校验
    3.文件内容一致性校验
    4.大文件内容加密
    截取部分内容加密即可

subprocess模块

import subprocess

res = subprocess.Popen(
    'name',  # 操作系统要执行的命令
    shell=True,  # 固定配置
    stdin=subprocess.PIPE,  # 输入命令
    stdout=subprocess.PIPE,  # 输出结果
)
print('正确结果',res.stdout.read().decode('gbk'))  # 获取操作系统执行命令之后的正确结果
print('错误结果',res.stderr)  # 获取操作系统执行命令之后的错误结果

logging日志模块

1.产生日志
2.过滤日志
3.输出日志
4.日志格式
import logging

标签:总结,wb4,匹配,第三次,res,本周,re,模块,append
From: https://www.cnblogs.com/zpf1107/p/16842157.html

相关文章

  • 2022-2023-1 20221404 《计算机基础与程序设计》第九周学习总结
    2022-2023-120221404《计算机基础与程序设计》第X周学习总结作业信息班级链接(2022-2023-1-计算机基础与程序设计)作业要求(2022-2023-1计算机基础与程序设计第......
  • 2022-2023-1 20221425 《计算机基础与程序设计》第九周学习总结
    学期(如2022-2023-1)学号(如:20221425)《计算机基础与程序设计》第九周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2022-2023-1-计算机基础与程序设计)这......
  • 2022-2023-1 20221415 《计算机基础与程序设计》第九周学习总结
    2022-2023-120221415《计算机基础与程序设计》第九周学习总结作业信息这个作业属于哪个课程<班级的链接>(2022-2023-1-计算机基础与程序设计)这个作业要求在哪......
  • javaweb期中考试总结
    本次期中考试的内容和往年的类似,需要实现的功能为增删改查,利用的工具有IDEA集成环境,TomCat本地部署的服务器,MySQL数据库。利用的技术有JDBC规范,HTML标签语言,以及利用Servle......
  • 周总结
    正则表达式字符组'''字符组的匹配顺序默认是从前到后'''[0,1,2,3,4,5,6,7,8,9]#从0到9简写:[0-9][a-z][0-9a-z]#字符组自带或关系特殊符号'''特殊符号也......
  • 10的第三次周报
    目录json补充正则匹配字符组特殊符号量词网络爬虫第三方模块第三方模块的下载安装exceljson补充取消中文转义ensuer_ascii=False正则匹配直接匹配字符直接填写需要......
  • 2022-2023-1 20221314《计算机基础与程序设计》第九周学习总结
    班级链接https://edu.cnblogs.com/campus/besti/2022-2023-1-CFAP作业要求https://www.cnblogs.com/rocedu/p/9577842.html#WEEK08作业目标功能设计与面向对......
  • jdbc总结
    JDBC(重点)第一个JDBC程序一、创建数据库--创建一个数据库CREATEDATABASEjdbcStudyCHARACTERSETutf8COLLATEutf8_general_ci;二、创建一个表,并插入数据--创......
  • 18.Linux系统总结
    Linux基础操作系统操作系统 OperatingSystem 简称 OS ,是软件的一部分,它是硬件基础上的第一层软件,是硬件和其它软件沟通的桥梁。操作系统会控制其他程序运行,管......
  • 区间贪心问题总结
    区间分组这类问题指的是如何将n个互有交集的区间分成k组,使得这k组中每一组中所安排的任务不发生冲突,同时我们还希望让k尽可能的小。这种问题的解决方法是按照区间的左端点......