python常用装饰器有哪些
python中常用的装饰器有以下几种
@property
@property是python的一种装饰器,常用于用来修饰方法。
class DataSet(object):
@property
def method_with_property(self):
return 15
def method_without_property(self):
return 15
l = DataSet()
print(l.method_with_property)
print(l.method_without_property())
@abstractmethod
@abstractmethod装饰器是一种抽象方法,表示基类。
from abc import ABC, abstractmethod
class Foo(ABC):
@abstractmethod
def fun(self):
'''please Implemente in subclass'''
class SubFoo(Foo):
def fun(self):
print('fun in SubFoo')
a = SubFoo()
a.fun()
@staticmethoed
@staticmethoed装饰器不需要表示自身对象的self和自身类的cls参数。
class A(object):
bar = 1
def foo(self):
print 'foo'
@staticmethod
def static_foo():
print 'static_foo'
print A.bar
@classmethod
def class_foo(cls):
print 'class_foo'
print cls.bar
cls().foo()
A.static_foo()
A.class_foo()
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341