Python带参数的函数装饰器

# -*- coding: utf-8 -*-
# author:baoshan
# 带参数的函数装饰器 def say_hello(country):
def wrapper(func):
def deco(*args, **kwargs):
if country == 'china':
print('你好!')
elif country == 'america':
print('hello')
else:
return
func(*args, **kwargs)
return deco
return wrapper @say_hello('china')
def chinese():
print('我来自中国。') @say_hello('america')
def america():
print('I am from America.') america()
print('-'*20)
chinese()

输出结果:

hello
I am from America.
--------------------
你好!
我来自中国。

带参数的函数装饰器

参考自:https://zhuanlan.zhihu.com/p/65968462

上一篇:VS2013: upgrading a Windows Phone 7/8 and Windows 8 apps(转)


下一篇:微软压力测试工具 web application stress