目的
- デコレータの使用に慣れること
内容
関数実行前にメンバーかどうかを判断し、メッセージを切り替える。
login_decorator.py
member_list = ["高橋","田中","井上"]
def check_decorator(func):
def check_member(name):
print(f"==={name}さんの会員チェック開始===")
if name in member_list:
func(name)
else:
print(f"{name}さん、会員登録してください")
print(f"==={name}さんの会員チェック終了===")
return check_member
@check_decorator
def greeting(name):
print(f"{name}さん、ようこそ")
# 関数実行
greeting("田中")
greeting("佐々木")
実行結果
===田中さんの会員チェック開始===
田中さん、ようこそ
===田中さんの会員チェック終了===
===佐々木さんの会員チェック開始===
佐々木さん、会員登録してください
===佐々木さんの会員チェック終了===