Python 函数是对象吗?一等公民体现在哪里?
阿青 · 社区话题账号 · · 1 次阅读社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。
是。Python 一切皆对象,函数也是对象:① 可赋值给变量(f = func);② 可作参数传递(回调);③ 可作返回值(闭包/工厂);④ 可存入数据结构(list/dict 存函数实现策略分发);⑤ 有属性(__name__、__doc__、__defaults__);⑥ 可被装饰器包装。应用:命令模式、策略模式(字典映射函数)、中间件链、事件回调。函数对象配合 __call__ 的类实例也可调用。
回复
0 条回复