python面向对象--类的装饰器
2024-08-30 20:56:53
# 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)
最新文章
- git for windows 的默认工作路径(HOME)的设置以及Git与GitHub之间的SSH加密协议
- NLog路由规则和上下文信息
- NoSQL之【MongoDB】学习(二):DML和查询操作说明
- eclipse远程调试Tomcat方法[转]
- CentOs5.8下安装Oracle12C
- 提高tomcat的并发能力
- jenkins+jmeter+ant搭建接口测试平台
- Java与C#的语法区别(不断更新中...)
- linux 安装nginx 详解
- 利用python web框架django实现py-faster-rcnn demo实例
- Solr4.10与tomcat整合并安装中文分词器
- [bzoj4625][BeiJing2016]水晶
- UE4分支的Git Flow
- 工控随笔_06_西门子_Step7归档项目无法备份的解决方法
- 记一次InputStream引起的乱码
- Spring AOP @AspectJ进阶
- [Oracle]如何观察Table 的各种Lock 之间的冲突
- 关于preg_match() / preg_replace()函数的一点小说明
- hdu 1026 bfs+记录路径
- Ext.js 之MVC
热门文章
- hive里面union all的用法记录
- 第三周课程总结&;实验报告(一)
- legend3---PHP使用阿里云短信服务
- sourcetree pull push需要密码问题
- Elasticsearch Java Rest Client API 整理总结 (一)
- mappers:将sql映射注册到全局配置中
- -----------------解决天天模拟器不能连接adb命令
- 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.
- FireMonkey 绘图(1)
- 2018.03.28 python-pandas groupby使用