摘要: #装饰器背景 装饰器的是一种AOP切面编程思想,可以将核心代码从冗长的业务代码中剥离出来,常见的打日志例子: def log(): import inspect print(f'called by {inspect.stack()[1][3]}...') def add(): log() print 阅读全文
posted @ 2020-09-19 17:00 孔胡子 阅读(584) 评论(0) 推荐(0) 编辑
摘要: global 关键字 定义在main函数或者外部的变量是全局变量,我们可以访问,但是如果需要求改则需要使用改关键词. 即如果需要在局部域修改全局变量,则需要需要使用global关键字再次声明 def scope(): global a, t # 否则不能修改 a += 1 t += 'yy' pri 阅读全文
posted @ 2020-09-19 14:24 孔胡子 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 闭包 因为python中函数也可以当作对象,所以如果出现当我们返回一个函数,而该函数含有外部变量的时候就形成了闭包。 闭包的特点: 是个嵌套函数 可以获得非局部的变量 将函数当作对象返回 看一个例子会更易理解: def make_printer(msg): msg = "hi there" def 阅读全文
posted @ 2020-09-19 14:22 孔胡子 阅读(147) 评论(0) 推荐(0) 编辑
摘要: python 没有同 cpp 一样的指针地址,所以使用起来其实蛮简单的 int, string, tuple不可变类型 i = 9 str = 'te' print(id(i), id(str)) j = i str2 = str print(id(j),id(str2)) 947285681188 阅读全文
posted @ 2020-09-19 14:19 孔胡子 阅读(2385) 评论(0) 推荐(0) 编辑
摘要: 方便随时查看回忆,我会不断补充与完善~(●ˇ∀ˇ●) #概念 内存地址赋值 闭包 装饰器 #function #关键词 global和nonlocal 阅读全文
posted @ 2020-09-19 14:16 孔胡子 阅读(145) 评论(0) 推荐(0) 编辑