# def deco(obj):
# print("=====",obj)
# obj.x=1
# return obj # @deco#===> test = deco(test)----->return func
# def test():
# print("test函数运行")
#
# test() def deco(obj):
print("=====",obj)
obj.x=1
obj.y=2
return obj @deco # Foo = deco(Foo)
class Foo():
pass print(Foo.__dict__) #一切皆对象
def test():
print("test")
test.x=1
print(test.__dict__) def typed(**kwargs): def deco(obj):
print("======>",kwargs)
print("=====>类名",obj)
for key,val in kwargs.items():
# obj.key=val
setattr(obj,key,val)
return obj
print("===>",kwargs)
return deco @typed(x=1,y=2,z=3)#1.typed(x=1,y=2,z=3)--->deco 2.@deco---->foo=deco(foo)
class Foo:
pass print(Foo.__dict__) @typed(name="egon")# @deco===>Bar=deco(Bar)
class Bar:
pass print(Bar.name)

  

最新文章

  1. git for windows 的默认工作路径(HOME)的设置以及Git与GitHub之间的SSH加密协议
  2. NLog路由规则和上下文信息
  3. NoSQL之【MongoDB】学习(二):DML和查询操作说明
  4. eclipse远程调试Tomcat方法[转]
  5. CentOs5.8下安装Oracle12C
  6. 提高tomcat的并发能力
  7. jenkins+jmeter+ant搭建接口测试平台
  8. Java与C#的语法区别(不断更新中...)
  9. linux 安装nginx 详解
  10. 利用python web框架django实现py-faster-rcnn demo实例
  11. Solr4.10与tomcat整合并安装中文分词器
  12. [bzoj4625][BeiJing2016]水晶
  13. UE4分支的Git Flow
  14. 工控随笔_06_西门子_Step7归档项目无法备份的解决方法
  15. 记一次InputStream引起的乱码
  16. Spring AOP @AspectJ进阶
  17. [Oracle]如何观察Table 的各种Lock 之间的冲突
  18. 关于preg_match() / preg_replace()函数的一点小说明
  19. hdu 1026 bfs+记录路径
  20. Ext.js 之MVC

热门文章

  1. hive里面union all的用法记录
  2. 第三周课程总结&实验报告(一)
  3. legend3---PHP使用阿里云短信服务
  4. sourcetree pull push需要密码问题
  5. Elasticsearch Java Rest Client API 整理总结 (一)
  6. mappers:将sql映射注册到全局配置中
  7. -----------------解决天天模拟器不能连接adb命令
  8. Error: Another program is already listening on a port that one of our HTTP servers is configured to use. Shut this program down first before starting supervisord.
  9. FireMonkey 绘图(1)
  10. 2018.03.28 python-pandas groupby使用