摘要:
递归调用: 在调用一个函数的过程中,直接或间接的调用函数本身。 def func(): print('from func') 间接调用: def foo(): print('form foo') bar() def bar(): print('form foo') foo() 递归都是有次数限制的。 阅读全文
摘要:
#yield: #1.把函数的执行结果封装好_iter_ 和_next_,即得到一个迭代器。 #2.与return功能类似,都可以返回值,但不同的是,return只能返回一次值,而yield可以返回多次值。 #3.函数暂停与再继续运行的状态是由yield保存。 #yield的表达式应用: 面向过程: 阅读全文
摘要:
生成器:在函数内部包含yield关键,那么该函数执行的结果就是生成器。 生成器就是迭代器。 yield的功能: 1,把函数结果做成生迭代器(以一种优雅的方式封装好_iter_) 2,函数暂停与在继续运行的状态是由yield来保存的 yield和return的比较?? 相同:都有返回值的功能 不同:r 阅读全文
摘要:
迭代器: 是一个重复的过程,每一次重复都是基于上一次的结果而来。 可迭代对象: 凡是对象有_iter_方法(对象._iter_),该对象就是可迭代对象。 字符串,列表,元组,字典等都是可迭代对象。 可迭代对象._iter_()=i 迭代器的优点: 1,提供了一种统一的(不依赖索引)的迭代方式 2,迭 阅读全文
摘要:
安装Zlib http://zlib.net/zlib-1.2.8.tar.gz tar -zxvf zlib-1.2.8.tar.gz cd zlib-1.2.8 ./configure --shared make make test make install 三、安装OpenSSL tar zx 阅读全文
摘要:
装饰器: #遵循开放封闭原则:对扩展是开放的,对修改是封闭的。 #装饰器本身可以可以是任意可调用的对象,被装饰的对象本身也可以是任意可以调用的对象。 #装饰器遵循的原则: 1,不修改被装饰对象的源代码 2,不修改被调用对象的调用方法 #装饰器的目的: 在遵循1和2的原则的前提下,为其他函数添加新功能 阅读全文
摘要:
闭包函数: 闭包函数是在作用域的前提下 闭包含数:定义在函数内部的函数,包含对外部作用域名字的引用,而不是对全局作用域名字的引用,那么该内部函数就称为闭包含数。 eg: 闭包函数顺序可以这样写: 先写需要执行的函数,然后写外部需要定义的值,然后再写外边的皮,然后将里边的函数返回。 闭包函数的作用: 阅读全文
摘要:
函数嵌套: 阅读全文
摘要:
为啥要用到函数: 复杂度增大 组织结构不清晰 可读性差 工具就是具备某一种功能的物件,就是程序中函数的概念。 事先准备工具的过程称为函数的定义 遇到特定的场景拿来用就称为函数的调用 函数的分类: 内置函数 自定义函数 函数的使用: 先定义 再使用 函数的定义: 函数的定义与变量的定义类似,没有事先定 阅读全文
摘要:
文件修改操作: 文件的修改操作:文件并没有修改操作,实际是将一个编写的新文件覆盖了原有的文件 替换文件中的某个内容: with open('old.txt','r',encoding='utf-8') as read_f,\ open('.old.txt.swap',swap,'w',encodin 阅读全文