デコレーターの仕事

 (ユーザーのアカウントのパスワードファイルから)1.書き込みデコレータ、複数の認証機能に加えて機能はログインが必要成功し、フォローアップ機能は、ユーザー名とパスワードを入力する必要がなくなりました

1 DL = Falseの#条件を決定するための基準を定義する
 2  DEFログイン(FUNC)
 。3      DEFインナー(*引数、** kwargsから)
 。4つの         グローバルDL#1グローバル
 5          IF DL:真#が実行された場合
 6。              REL = FUNC()
 7。             戻るRELを
 8。         9              名=入力(" あなたの名前を入力してください:" 10              パスワード=入力(" パスワードを入力してください:" 。11              IFユーザ名== " wzc27229 "とパスワード== "123456 " 12である                  DL = 13は                  REL = FUNC()
 14                  戻りREL
 15              16                  プリント(" 入力エラー" 17。     復帰インナー
 18である 
19。 @login
 20 DEFのadd_goods(*引数、** :kwargsから)
 21は、      印刷(" アイテムを追加" 22  
23  @login
 24 DEF del_goods(* argsを、** :kwargsから)
 25      (印刷"商品を削除26  
27  add_goods()
 28 del_goods()
コードの表示

 2.書き込みデコレータ、プラスの機能を記録する複数の関数呼び出しは、各関数呼び出し関数名が呼ばれるファイルに書き込まれますが必要です

1  DEFのwapper(FUNC):
 2      DEFインナー(*引数、** :kwargsから)
 3。          開くと(' ログイン'' A '、エンコード= ' UTF-8 'AS F:#ファイルを開くログに追加方法
 。4              f.write(FUNC .__名__ + ' \ N- ' )#関数の名前を取得します
 。5          ファイル= FUNC()
 。6          リターンファイル
 。7      リターンインナー
 。8  
。9  @wapper
 10  DEF add_goods():
 11      印刷("製品の追加" 12が 
ある13  @wapper
 14  DEF del_goods():
 15      印刷(" アイテムを削除16  
。17  )add_goods(
 18は add_goods()
 。19 add_goods()

 

おすすめ

転載: www.cnblogs.com/wzc27229/p/10993915.html