摘要: 递归函数初始当一个函数用自身定义时就称为递归(recursive).即,一个函数直接或间接地调用自身,是为直接或间接递归。阶乘实现递归:def fun(n): if n ==1: return 1 else: return n*fun(n-1)print(fun(8))默认递归深度:998impor 阅读全文
posted @ 2018-08-22 19:12 麒麟610 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 1.4.2和数据结构相关(24) 列表和元祖(2)list:将一个可迭代对象转化成列表(如果是字典,默认将key作为列表的元素)。 1 dic ={1:2,3:4} 2 print(list(dic)) tuple:将一个可迭代对象转化成元祖(如果是字典,默认将key作为元祖的元素)字典转换成元祖 阅读全文
posted @ 2018-08-22 19:09 麒麟610 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 内置函数:作用域相关 ******globals() :返回一个字典:包含全部的全局变量。locals() : 返回一个字典:包含的是当前作用域 所有的变量。 1 b = 2 2 def func1(): 3 a = 1 4 print(locals()) 5 print(globals()) 6 阅读全文
posted @ 2018-08-22 18:54 麒麟610 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 1.生成器用python代码构建的迭代器就是生成器,生成器的本质就是迭代器。构建生成器的两种方法: 1.利用生成函数构建生成器 2.利用列表推导式构建生成器 1 def func(x): 2 x += 1 3 func(5) #函数的执行命令,并且接受函数的返回值。 4 print(func(5)) #如果没有给return则返回None 5 print(func) ... 阅读全文
posted @ 2018-08-22 18:26 麒麟610 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 闭包内层函数对外层函数的变量(非全局变量)的引用,并返回函数名就形成了闭包。 1 def packet(): 2 name = '孙飞' 3 def inner(): 4 print(name) 5 print(inner.__closure__) #判断是否是闭包,如果是闭包对象则返回一个cell 6 return in... 阅读全文
posted @ 2018-08-22 18:19 麒麟610 阅读(188) 评论(0) 推荐(0) 编辑