本文只包含部分内容,后续待完善。 本文叙事风格为备忘录形式,而不是教程,适合有一定
Python
基础者阅读,后续考虑改变行文叙事,使其适合初学者。
装饰器
Python 中一个著名的语法糖就是装饰器。装饰器是一种闭包(即函数嵌套函数),其作用在于拓宽原函数的功能,可以在不对原函数作任何修改的情况下,拓宽函数的功能,同时有效避免重复代码,增加了代码的可读性。
下面以除法作简单示例,在除法中除数不能为零,所以在两数相除前应当检查除数是否为零:
- 只使用函数
def check(b):
if b == 0;
return False
else:
return True
def division(a, b):
if check(b):
return a/b
else:
print("Divisor cannot be zero!")
- 装饰器用法
def check(func):
def wrapper(*args, **kwargs):
if args[1] == 0
print("Divisor cannot be zero!")
return None
else:
return func(*args, **kwargs)
return wrapper
@check
def division(a, b):
return a/b