栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python 小知识点合集 1.list 可以根据索引赋值 2.闭包

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python 小知识点合集 1.list 可以根据索引赋值 2.闭包

"""1 .list 可以根据索引赋值"""
a = [1, 23, 33]
print(a)
b = a.index(23)  # 找到值为23的索引
print(b)
a[b] = 999  # 根据索引赋值
print(a)

结果

[1, 23, 33]
1
[1, 999, 33]
"""2 .闭包"""

如果外函数在结束的时候发现有自己的临时变量将来会在内部函数中用到,就把这个临时变量绑定给了内部函数,然后自己再结束。
闭包的定义
1 在一个外函数中定义了一个内函数。
2 内函数里运用了外函数的临时变量。
3 并且外函数的返回值是内函数的引用。

是闭包

def foo():
    a = []

    def func(num): # 符合定义1 在一个外函数中定义了一个内函数
        a.append(num) # 符合定义2 内函数里运用了外函数的临时变量 a
        print(a)
    print(func.__closure__)
    return func # 符合定义3  并且外函数的返回值是内函数的引用。
x = foo()
x(1)
x(2)
x(3)

非闭包

def foo():
    a = []

    def func(num):   # 符合定义1  在一个外函数中定义了一个内函数
        print(num)   #  不符合定义2 内函数里没有运用了外函数的临时变量 a

    print(func.__closure__)  # 有值就是闭包
    return func # 符合定义3 并且外函数的返回值是内函数的引用。


x = foo()
x(1)
x(2)
x(3)
3.迭代器
4.生成器
5.装饰器
6.函数加不加括号
7.深浅拷贝
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/744803.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号