python基础之面向过程编程,模块】的更多相关文章

面向过程编程 面向过程的核心是过程,指的是解决问题的步骤,即先干什么再干什么,就好像设计一条流水线. 优点:复杂的问题流程化,进而简单化 缺点:可扩展性差,修改流水线的任意一个阶段,都会牵一发而动全身 应用:扩展性要求不高的场景,典型案例如框架,linux内核,git 模块 1.什么是模块? 模块就是一系列功能的集合体 常用的模块形式:自定义模块,第三方模块,内置模块 四种类别: ①.使用python编写的.py文件 ②.把一系列模块组织到一起的含__init__.py文件的文件夹(称之为包)…
要求:在文件里递归找到关于包含“Python”内容的文件的绝对路径并打印出来 #定义阶段 import os,time def init(func): #装饰器的作用是使下面的生成器初始化,yield等着被传值 def wrapper(*args,**kwargs): res = func(*args,**kwargs) next(res) #调用生成器初始化 return res return wrapper @init def search(target): '''找到文件的绝对路径'''…
上节课复习:1. 函数的递归调用 在调用一个函数的过程中又直接或者间接地调用了函数本身称之为函数的递归 函数的递归调用有两个明确的阶段: 1. 回溯 一层一层地调用本身 注意: 1.每一次调用问题的规模都必须有所减少 2.必须有一个明确的结束条件或者进入递归的条件 2. 递推 往回一层一层的推算出结果 2. 二分法 3.三元表达式 res=条件成立情况下的返回值 if条件 else条件不成立情况下的返回值 4.列表生成式 [for i in range(10) if i > 3] 5.字典生成式…
1. 面向过程与面向对象的优劣 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了写程序的复杂度,只需要顺着要执行的步骤,堆叠代码即可. 缺点是:一套流水线或者流程就是用来解决一个问题,代码牵一发而动全身. 应用场景:一旦完成基本很少改变的场景,著名的例子有Linux內核,git,以及Apache HTTP Server等. 面向对象的程序设计的核心是对象(上帝式思维),要理解对象为…
一.解释 面向过程:核心是过程二字,过程即解决问题的步骤,基于面向过程去设计程序就像是在设计,流水线式的编程思想,在设计程序时,需要把整个流程设计出来, 一条工业流水线,是一种机械式的思维方式 二.优缺点 优点:程序体系结构清晰,可以把复杂的问题简单化,流程化 缺点:可扩展性差,一条流线只是用来解决一个问题,所以说面向过程的应用多为不需要经常变化的软件 应用场景:linux内核,git,httpd,shell脚本 三.实例(利用协程函数进行面向过程编程) 过滤一个文件下的子文件.字文件夹的内容中…
目录 函数进阶三 1. 匿名函数 1. 什么是匿名函数 2. 匿名函数的语法 3. 能和匿名函数联用的一些方法 2. python解释器内置方法 3. 异常处理 面向过程编程 函数进阶三 1. 匿名函数 1. 什么是匿名函数 匿名函数就是没有名字的函数,没法调用,他只能和某些方法联合起来使用 2. 匿名函数的语法 lambda 参数:返回值 #也可以通过赋值,让它变为有名函数 f = lambda x,y:x+y res = f(1,2) print(res) 3. 能和匿名函数联用的一些方法…
今天主要讲三大部分内容: 一.匿名函数二.函数递归与二分法三.面向过程编程 一.匿名函数: """ 1. 什么时匿名函数 def定义的是有名函数:特点是可以通过名字重复调用 def func(): #func=函数的内存地址 pass 匿名函数就是没有名字的函数:特点是只能再定义时使用一次 2. 为何要用匿名函数 强调: 匿名函数的定义就相当于只产生一个变量在值,而没有绑定任何名字, 所以会在定义完之后就被回收,无法重复使用,只能在定义时使用一次 应用:当某一个功能仅使用一次…
Python之路,Day10 = Python基础10 生成器表达式: (i for i in range(10) if i > 5)os.walk(r'文件路径')返回一个迭代器, 第一次next:包含一个元组,元组中有三个元素,(路径,路径包含的所有文件夹,路径包含的所有文件) 第二次next:包含一个元组,元组中有三个元素,(上面第二个元素中的第一个路径,前面那个路径包含的所有文件夹,前面那个路径包含的所有文件) 1.x = yield #yield的表达式的应用,可以通过 yield 向…
"""匿名函数1 什么是匿名函数 def定义的是有名函数:特点是可以通过名字重复调用 def func(): #func=函数的内存地址 pass 匿名函数就是没有名字的函数:特点是只能再定义时使用一次 匿名 lambda x,y,z=1:x+y+z #与函数有相同的作用域,但是匿名意味着引用计数为0,使用一次就释放,除非让其有名字 func=lambda x,y,z=1:x+y+z func(1,2,3) #让其有名字就没有意义 2 为何要用匿名函数 强调: 匿名函数的定义…
一.yield表达式形式 1 #装饰器,初始化含yield表达式的生成器 def init(func): def wrapper(*args,**kwargs): g=func(*args,**kwargs) next(g) return g return wrapper @init def eater(name): print('%s ready to eat'%name) list=[] while True: food=yield list list.append(food) print(…