让装了装饰器的函数的名字不是inner,而是原来的名字

from functools import wraps

def wrapper(func):
@wraps(func) # 复制了原来函数的名字和注释
def inner(request,*arg,**kwargs):
# 之前
ret = func(request,*arg,**kwargs)
# 之后
return ret
return inner @wrapper # f1 = wrapper(f1)
def f1(request):
pass f1.__name__ # inner _> f1 #让装了装饰器的函数的名字不是inner,而是原来的名字

最新文章

  1. “我是谁?”-管理者的角色、职责与工作思路.ppt
  2. iOS监听键盘事件
  3. 关于Kb/s,KB/s的一些知识
  4. Vue.2.0.5-深入响应式原理
  5. 基于HTTP Live Streaming(HLS) 搭建在线点播系统
  6. 【Unity Shaders】学习笔记——SurfaceShader(三)BasicDiffuse和HalfLambert
  7. android 工具类之SharePreference
  8. 【HDOJ】1078 FatMouse and Cheese
  9. C#获取变量名的扩展方法
  10. Linux内核通用队列的使用笔记(读linux内核设计与实现)
  11. angular笔记_10
  12. nodeJs和JavaScript的异同(转)
  13. div 拖拽
  14. Java之收集很好的Java学习资料地址+博客
  15. 自定义Fiddler插件一
  16. 第七十七课 最小生成树(Kruskal)
  17. vs编译器好多下划波浪线但不报错
  18. [Error: Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually
  19. bzoj1087互不侵犯King(状压)
  20. JAVA中简单的MD5加密类(MD5Utils)

热门文章

  1. git 使用详解(7)-- 远程仓库的使用
  2. leetcode字节跳动专题(持续更新)
  3. iSensor APP 之 摄像头调试 MT9D001 MT9P031 测试小结 200万像素和500万像素摄像头
  4. Java 将Excel转为图片、html、XPS、XML、CSV
  5. IoTClient开发5 - ModBusRtu协议
  6. 使用 yum 安装Docker(CentOS 7下)
  7. 自建CA证书搭建https服务器
  8. 201871010119-帖佼佼《面向对象程序设计(java)》第十六周学习总结
  9. 更新Preloader和uboot
  10. SSH框架搭建详细图文教程