スクリーンショット_2019-09-09_23

python record ~roboko app 2 decorator復習

decorator

私の疑問
まず!funcて何だよ!def定義もしてない関数勝手に使うなよ!


答え。
Funcは関数を引数にとるとき使う。引数として登場するからdef定義しようがない。


def _hello_decorator(func): <1
def wrapper(self):
if not self.user_name:
self.hello()
return func(self)
return wrapper


def _hello_decorator(func): <1
1行目
デコレーター定義したよ、引数はfuncっていう関数だよ。この func に今後デコレーターをかぶせる先の関数が入るよ

2行目
def wrapper(self):
デコレータ内を通過するときの処置を決めていくよ

if not self.user_name:
self.hello()
return func(self)
3ー5行目
user_nameが無い時はhello関数を実行するよ
その後、1行目でfuncに代入した関数を返してやるよ

return wrapper
6行目
以上引っくるめてwrapperに返すよ

検索してUdemy見直して考えて検索してループにハマりながら頑張る。

この記事が気に入ったらサポートをしてみませんか?