1. 上周内容回顾
1. 闭包:
内层函数对外层函数变量的使用
def outer():
a = 10
def inner():
print(a)
return inner ret = outer() ret()
ret()
ret()
ret()
2. 迭代器
dir() 查看某变量能执行哪些操作 可迭代对象: __iter__()
迭代器: __iter__() __next__() from collections import Iterator, Iterable
isinstance(xxx, Iterator) 迭代器: __next__()
1. 省内存
2. 惰性机制
3. 只能向前. 不能反复 3. 生成器
1. 生成器函数:
yield 函数() => 创建一个生成器对象
生成器.__next__() 获取到生成器中的数据 send() 可以给上一个yield位置传值 2. 生成器表达式 列表推导式: [结果 for if条件]
字典推导式: {结果 for if} 生成器表达式: (结果 for if条件) 本质就是迭代器 4. 内置函数:
len()
map(func, lst) 映射
filter(func, lst) 过滤
sorted(lst, key=func, reverse=) 排序
format() 格式化
eval()
exec()
zip()
globals()
locals()
bin()
hex()
oct()
int() lambda x:x+1 5. 装饰器
通用装饰器的写法 def wrapper(fn):
def inner(*args, **kwargs):
'''在之前'''
ret = fn(*args, **kwargs)
'''在之后'''
return ret
return inner @wrapper # func = wrapper(func)
def func():
pass func() # 实际执行的是inner 开闭原则:
开: 对功能的扩展开放
闭: 对修改源代码封闭 带有参数的装饰器
def wrapper_out(参数):
def wrapper(fn):
def inner(*args, **kwargs):
'''在之前'''
ret = fn(*args, **kwargs)
'''在之后'''
return ret
return inner
return wrapper @wrapper_out(实参)
同一个函数被多个装饰器装饰 2. 模块
模块就是一个py文件或者装有py文件的文件夹 import 文件
from 文件(包) import 具体内容 简单的分类 :
1. python内置模块
2. 自己定义的模块
3. 第三方模块 3. collections
Iterable 可迭代
Iterator 迭代器 Counter 计数器
defaultdict 默认值字典 deque 双向队列 queue 队列
先进先出 stack 栈, List
先进后出. FILO OrderedDict 排序字典 4. random
random.randint() 5. time模块
%Y-%m-%d %H:%M:%S 数字 -> 时间 : 把数字转化成结构化时间 结构化时间转化成格式化时间
时间 -> 数字: 把时间转化成结构化时间 结构化时间转化成时间戳 6. pickle模块
bytes -> 硬盘识别的
lst = ["abc", "def"] 把一个对象转化成bytes的过程被称为序列化
把bytes转化回对象被称为反序列化 7. json模块(重点)
dumps
loads 8. os模块
和操作系统相关的内容 open("", mode="w") 创建文件
os.remove() 删除文件
os.rename() 重命名 要记住的
os.makedirs() 创建文件夹
os.rmdir() 删除文件夹 os.listdir() 列出文件夹内所有文件的名字
os.getcwd() 获取到当前工作目录 os.path.exists() 判断某个文件或者文件夹是否存在
os.path.join() 拼接路径 9. sys模块
关于解释器相关的操作
sys.argv
sys.path 10. 正则表达式
规定一个格式. 匹配字符串用的 普通字符, 平时用到的一些文字信息 元字符(重点)
1 . 除了换行符以外的所有内容
2 \d 数字
3 \w 匹配数字, 字母, 下划线
4 \n 换行
5 \s 匹配所有的空白
6 ^ 字符串的开始
7 $ 字符串的结束
8 [] 字符组
9 [^....] 字符组
10 () 分组 (重要) 量词
* 表示匹配0次或者多次, 尽可能多的匹配
+ 表示匹配1次或多次
? 表示0次或者1次
{n} 表示重复n次
{n,} 重复n次或更多次
{n,m} 重复n次到m次 练习1: 匹配一个邮箱 homexue@126.com 448910663@qq.com
练习2: <span><div>fdsafasdfasdfsda</div></span> 11. re模块(爬网站--dytt)
findall
finditer
search
match

python3 今日大纲 day05的更多相关文章

  1. SolrCloud今日大纲

    SolrCloud今日大纲(了解) ●    分布式集群系统基本概念 ●    SolrCloud入门 ●    SolrCloud搭建 ******************************* ...

  2. python3 day03 大纲

    一. 上次课内容回顾 1. 格式化输出 %d 占位数字 %s 占位字符串 %f 占位小数 "jfklasjkfj%s %d %f" % (值1, 值2, 值3) "{}爱 ...

  3. python3 day04 大纲

    上节课内容回顾: 1. 小数据池 存储数据. 共享小数据池 int,str, bool == 和 is区别: == 判断的是两边的值 is 左右两端的内存地址 2. 深浅拷贝 1. = 没有创建新对象 ...

  4. python3 day02 大纲

    一. 格式化输出 %s 字符串的占位 %d 数字的占位 digit %f 浮点数 字符串 % (数据) 模板字符串(3.5) # username = "admin"# passw ...

  5. python3 day01 大纲

    1. 简介python 龟叔 89年 人工智能 2. 特点 优点: 简单, 明确, 优雅,跨平台 缺点: 慢 解释型编程语言 分类: 解释型: 一行一行的把代码进行翻译. 执行效率比较低 优势: 跨平 ...

  6. 巨蟒python全栈开发-第5天 字典&集合

    今日大纲: 1.什么是字典 字典是以key:value的形式来保存数据,用{}表示. 存储的是key:value 2.字典的增删改查(重点) (1) 添加 dic[新key] = 值 setdefau ...

  7. time、random以及序列化模块

    一. time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“type( ...

  8. week7_notebooke

    回顾:类:具有相同属相和技能的一类事物对象:类的具体表现class A: country = 'China' #静态变量,静态字段 def __init__(self): #动态变量,方法 self. ...

  9. 巨蟒python全栈开发-第11阶段 ansible_project3

    今日大纲: 1.用户创建 2.前端优化 3.用户编辑 4.用户删除 5.ansible api介绍 1.用户创建 新建一个user_create.html的页面 <form class=&quo ...

随机推荐

  1. 如何学习SpringCloud?(SpringCloud模板)

    前言 对于SpringCloud来说(下面简称SC),现在网上已经有很多教程写的非常详细,因为SC的组件特别多,虽然不是所有组件都需要用到,但是学习的时候我们都需要去学习和了解.所以我想如果再写把每一 ...

  2. 【转载】CentOS 7部署ASP.NET Core应用程序

    看了几篇大牛写的关于Linux部署ASP.NET Core程序的文章,今天来实战演练一下.2017年最后一个工作日,提前预祝大家伙元旦快乐.不扯淡,直接进入正题.您有任何问题请在评论区留言. 1.环境 ...

  3. 10年架构师告诉你,他眼中的Spring容器是什么样子的

    相关文章 如何慢慢地快速成长起来? 成长的故事之Spring Core系列 你是如何看待Spring容器的,是这样子吗? Spring的启动过程,你有认真思考过吗?(待写) 面向切面编程,你指的是Sp ...

  4. 分析core,是从案发现场,推导案发经过

    分析core不是一件容易的事情.试想,一个系统运行了很长一段时间,在这段时间里,系统会积累大量正常.甚至不正常的状态.这个时候如果系统突然出现了一个问题,那这个问题十有八九跟长时间积累下来的状态有关系 ...

  5. 在数据采集器中用TensorFlow进行实时机器学习

    最新DataOps平台的真正价值,只有在业务用户和应用程序能够从各种数据源来访问原始数据和聚合数据,并且及时地产生数据驱动的认识时,才能够实现.利用机器学习(Machine Learning),分析师 ...

  6. 痞子衡嵌入式:ARM Cortex-M内核那些事(4)- 性能指标

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是ARM Cortex-M性能指标. 1.处理器的性能指标 用于评价CPU的性能指标非常多,不同的性能侧重点下的测试标准可能得出的指标值不 ...

  7. 易被忽略的Python内置类型

    Python中的内置类型是我们开发中最常见的,很多人都能熟练的使用它们. 然而有一些内置类型确实不那么常见的,或者说往往会被我们忽略,所以这次的主题就是带领大家重新认识这些"不同寻常&quo ...

  8. .Net语言 APP开发平台——Smobiler学习日志:如何调用API进行短信发送

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 二.发送短信代码 VB: Pr ...

  9. python爬虫+数据可视化项目(关注、持续更新)

    python爬虫+数据可视化项目(一) 爬取目标:中国天气网(起始url:http://www.weather.com.cn/textFC/hb.shtml#) 爬取内容:全国实时温度最低的十个城市气 ...

  10. [JS设计模式]:构造函数模式(2)

    基本用法 function Car(model, year, miles) { this.model = model; this.year = year; this.miles = miles; th ...