• 笔记---迭代器,闭包,装饰器


    1.迭代器
    a.判断迭代 isinstance()判断一个
    b.生成器是可迭代对象
    c。iter() 转成生成器

    迭代对象


    2. 闭包
    定义 :一坨东西 ,名字只是一个变量指向这一坨东西
    在函数里面定义一个函数,里面的函数用到外边的变量,这个函数和用到的变量称之为变量
    第一步:先调用函数,找一个变量指向里面的函数,
    例子: def test(number):
    print('1111111111')
    def test_in(number2):
    print('---2----')
    print(number+number2)
    print('333333')
    return test_in
    ret =test(100)
    print('*'*30)
    ret(1)#这个ret就是test_in()这个函数
    ret(200)

    应用:
    def test(a,b):
    def test_in(x):
    print(a*x+b)
    return test_in
    line1=test(1,1)
    line2=test(10,4)
    line1(0)
    line2(0)
    简化代码传参的格式

    3.装饰器
    原理:
    例子
    def w1 (func):
    def inner():
    print('1111')
    fnuc()
    return inner
    def f1():
    print('f1')
    def f2():
    print('f2')
    f1=w1(f1)# 等价 @w1
    f1()
    f2=w1(f2)
    f2()

    2个装饰器 先装饰离函数最近的,然后向上一次装饰



    4.匿名函数
    应用 给字典排序
    例子 infors=[{"name":"laowang","age":10},"name":"xiaoming","age":10},"name":"bangzhang","age":10}]
    infors.sort(key=lambda x:x['name']) 第一个x 为字典,第二个x为key


    5.列表排序
    num。sort()
    num.reverse() 逆序


    6.

  • 相关阅读:
    dns解析后ping的居然不是自己的ip
    Ubuntu修改默认使用的bash
    安装 libbpg
    libnccl安装
    安装opencv
    tcpdump使用
    jQuery类操作
    jQuery对象和DOM对象的相互转换
    jQuery入口函数
    什么是外边距重叠?重叠的结果是什么?
  • 原文地址:https://www.cnblogs.com/mrwuzs/p/8028298.html
Copyright © 2020-2023  润新知