python3基础09(装饰器的使用)

Posted 新美好时代

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python3基础09(装饰器的使用)相关的知识,希望对你有一定的参考价值。

#!/usr/bin/env python
# -*- coding:utf-8 -*-

import time

#方式1
class People:

def __init__(self, name, age):
self.__name = name
self.__age = age

def get_age1(self):
return self.__age

def set_age2(self, age):
if isinstance(age, int):
self.__age = age
else:
raise ValueError

def del_age3(self):
print("删除年龄数据!")

# 核心在这句
age1 = property(get_age1, set_age2, del_age3, "年龄")


obj = People("jack", 18)
print(obj.age1)
obj.age = 19
print("obj.age: ", obj.age)
del obj.age

#方式2
def deco(f):
def wrapper():
start_time = time.time()
f()
end_time = time.time()
execution_time = (end_time - start_time)*1000
print("time is %d ms" %execution_time )
return wrapper

@deco
def f():
print("hello")
time.sleep(1)
print("world")

if __name__ == ‘__main__‘:
f()



















































以上是关于python3基础09(装饰器的使用)的主要内容,如果未能解决你的问题,请参考以下文章

关于路径和自定义装饰器的 Python3 Django 问题

python3装饰器的简单解释

python3-多装饰器的执行顺序

python3之装饰器

python3 装饰器修复技术@wraps到底是什么?

python3-装饰器