【翻译】深入浅出Python装饰器之基本用法
深入浅出Python装饰器 前言 前两天被问到装饰器的概念,在我的理解里:装饰器就是一个函数,他的参数为函数,一般用来对参数进行一些额外的处理,但不影响参数函数的表现。 但说实话写的不多,于是就想查一下资料具体看一下。而前两天发现谷歌设置为中英文,搜索结果的排序都不一样。于是就翻了下英文的资料,看完之后感觉讲的的确不错,就诞生了想尝试翻译一下的想法,于是就有了本文。 老外讲东西太细了,所以有些显而易见的话会被我过滤掉……另外,高级用法暂时未翻。 本文翻译自 Primer on Python Decorators 的第一部分,深入浅出是个人翻译,Primer原义为入门读物,所以也可以翻译为Python装饰器入门指南。 翻译正文 目录 本文的结构如下: 函数 第一类对象(First-Class Objects) 内置函数 返回值为函数的函数 简单的装饰器 语法糖 一个重复使用的装饰器 带参数的装饰器函数 装饰器函数的返回值 你是谁啊?(函数名) 一些真实用例 计时函数 代码调试 减速/延迟执行的代码 插件注册 检查用户是否登陆的装饰器 华丽的装饰器/装饰器的高级用法 装饰类 多重装饰器 带参装饰器 多功能装饰器(带参不带参均可) 含有状态的装饰器 另外一些真实用例 减速/延迟执行的代码 单例模式的实现 缓存返回值 向单元里添加信息 验证JSON是否合理 总结 深入阅读 另:此文有配套