# -*- 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://www.cnblogs.com/serpe...
https://www.cnblogs.com/liany...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。