zoukankan      html  css  js  c++  java
  • 9.23闭包函数/装饰器/迭代器/生成器

    闭包函数

    闭包函数把闭包函数内部的变量和闭包函数内部的函数两者包裹在一起,然后以返回值的形式返回出来.
    闭包函数至少也得符合函数嵌套
    例:f1就叫闭包函数

    def f1(x):
    	def f2():
    		print(x)
    	return f2
    

    装饰器

    给函数增加功能的函数
    1.装饰器本身是函数,只不过它用来装饰被装饰的函数
    2.装饰器装饰函数,不改变被装饰函数的源代码
    3.装饰器装饰函数,不改变被装饰函数的调用方式

    装饰器语法糖

    就是让代码更简洁
    @login_deco就代替了index = login_deco(index)

    装饰器模版

    def deco(func):
    	def wwrapper(*args,**kwargs):
    		#要加什么功能 加什么
    		res = func(*args,**kwargs)
    		return res
    	return wrapper
    

    迭代器

    可迭代对象: 含有__iter__方法的就叫做可迭代对象
    迭代器:含有__iter__和__next__方法的就叫做迭代器

    生成器

    含有yield关键字的函数就叫做生成器

  • 相关阅读:
    卡牌配对
    SNOI2017 礼物
    【BZOJ2893】征服王
    景中人
    钦点
    杨柳
    兼容IE与firefox、chrome的css 线性渐变(linear-gradient)
    使用C# DES解密java DES加密的字符串
    jQuery插件autoComplete使用
    hadoop SQL使用
  • 原文地址:https://www.cnblogs.com/793564949liu/p/11574250.html
Copyright © 2011-2022 走看看