python常用装饰器有哪些

927
2021/3/16 17:13:22
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

python常用装饰器有哪些

python中常用的装饰器有以下几种

1.@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())

2.@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()

3.@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()

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: python在什么平台运行环境