风火编程-- 装饰器,reduce, 片函数,闭包概念

本文深入探讨了Python编程的高级主题,包括装饰器的使用,如何通过装饰器在不改变函数体的情况下添加前置或后置功能;函数式编程的概念,如使用reduce函数实现list的累乘;偏函数的应用;以及闭包的原理和实例。此外,还介绍了生成器的基本操作,如next()和send()方法的使用。最后,讲解了Python模块导入的顺序和推荐做法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

《python核心编程》读书笔记(六)

第十一章

11.3.6装饰器
在不改变函数体的前提下,对函数添加前置或后置功能.
def 装饰器函数(func):
def wrapper(*args, **kwargs):
before_func()
func()
after_func()
return wrapper
使用默认参数可以提高程序的鲁棒性

11.7(函数式)编程
返回list的累乘

reduce(lambda x, y: x*y, list)

偏函数

add1 = partial(add, 1)

闭包
在外层函数里定义内层函数, 并在定义内层函数时使用外层函数的变量.
该变量叫做自由变量.
自由变量可以在内层重新赋值,相当于在内层域中重新定义了一个同名的变量
修改自由变量需要用nonlocal声明

def out():
    x=y=1
    def inn():
        x = 2
        nonlocal x
       # x = 2
        x += 2
        print("inn:",x,y)
    print("out:",x,y)
    return inn
inn = out()
inn()

11.10.2生成器
next() # 返回下一个元素
send(element) # 加入新元素并返回

第十二章

12.4模块的导入
顺序
标准库模块
三方库模块
自定义模块
推荐使用from—import (—, )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值