+運動20200323

オリジナル機能:時間関数はtime.sleepで(n)を行うアナログデコレータA:プラス時間統計機能デコレータII:プラスのログイン認証機能:ファイルからのユーザーのアカウントのパスワード1、ログ成功したフォローアップ機能は、ユーザー名を入力することはもはや必要ではないとパスワード
#は3のデコレータ:ファイルからユーザーのアカウントのパスワード:ログイン認証機能を追加タイムアウトよりも、タイムアウト期間内にログインを繰り返すことなく、ログインに成功したら、2時間、あなたは再度ログインする必要があります

インポート


DEF :time_count(FUNC)
     DEFの非表示(* argsを、** :kwargsから)
        スター = time.time()
        FUNC( * argsを、** kwargsから)
        終了 = time.time()
         印刷この第2のプログラムの実行は、{}かかる .format(エンド- スター))

    リターン非表示


DEFのlogin_check_1(FUNC):
     DEFの非表示(* argsを、** kwargsから):
        タグ。= 1
         しばらくタグ:
            のlogin_name = INPUT(' 入力ログインアカウント:' ).strip()
            login_pwd = INPUT(' パスワードを入力します。' ) .strip()
            オープン(rの' 02アカウントライブラリ.TXT '、MODE = ' RT '、エンコード= ' UTF-8 ' :)ファイルAS
                  check_info でのファイル:
                    check_list。= Check_info.strip()スプリット(' ' IFのlogin_name == check_list [0]  login_pwd == check_list [1。]:
                         印刷' ===ログインに成功し、その後のプログラムの実行が継続されます=== ' 
                        タグ = 0
                         BREAK 
                印刷' ユーザー名またはパスワードが間違っている、再入力してください' 
        FUNC( * argsを、** kwargsから)

    復帰を隠す


DEFのlogin_check_2(FUNC):
     DEFの非表示(* argsを、**kwargsから):
        タグ = 1
         しばらくタグ:
            のlogin_name = INPUT(' ログインアカウントを入力します。' ).strip()
            login_pwd = INPUT(' :パスワードを入力してください' ).strip()
            オープン(rの' 02アカウントライブラリ.TXT '、MODE = ' RT ' =エンコード、'UTF-8 ' )ファイルAS:
                  check_info でのファイル:
                    check_list。check_info.strip =()スプリット(' ' IFのlogin_name == check_list [0]  login_pwd == check_list [1。]:
                         印刷' ===ログインに成功し、その後のプログラムの実行が継続されます=== ' 
                        login_star_time = time.time()
                        FUNC( * argsを、** kwargsから)
                        INPUT(' アナログ動作時間' 
                        login_end_time = time.time()
                        do_time = login_end_time - login_star_time
                         IF <do_time 6。
                            タグ = 0
                         印刷操作は再ログイン、タイムアウトしたBREAK 
                他に印刷ユーザー名またはパスワードが間違っている、再入力してください

    の戻り隠す


DEF 追加(A、B):
    (time.sleep。3 印刷" 機能プリミティブ:{} ' .format(+のB))

 

おすすめ

転載: www.cnblogs.com/caoyu080202201/p/12554091.html