python3,,python3之闭包


python3之闭包、装饰器、生成器闭包: 可以理解为函数的一种使用方式。 具体的特性为: 函数中内嵌函数,把内嵌函数的执行结果作为外层函数的返回值。 def count(start=0): counter = [start] def incr(): counter[0] += 1 return counter[0] return incr装饰器: 装饰器是在函数调用之上的修饰。 应用场景: 在多个函数需要进行同样的操作时,在不改变源代码的前提下,可以使用装饰器 def set_color(func): def set_red(): return ‘\033[31;1m%s\033[0m‘ % func() return set_red @set_color def welcome(): return ‘welcome to china‘ @set_color def say_hi(): return ‘how are you?‘ if __name__ == ‘__main__‘: print(welcome()) print(say_hi())生成器: 一个函数中间的yield返回的中间值 yield返回执行结果并不中断程序执行,return在返回执行结果的同时中断程序执行 >>> def azj(): ... yield ‘hello‘ ... yield 100 ... yield [10, 20] ... >>> a = azj() >>> for i in a: ... print(i) ... hello 100 [10, 20]

python3

评论关闭