#2.1:ユーザのログイン・インターフェースを書くこと #「ログイン成功」した後に出力することにより、検証、検証を完了するために、アカウントのパスワードを入力し、1 #2、あなたは別のユーザーがログインすることができます #同じアカウントを入力するための3回失敗をロック(注:にユーザーをロックファイル、そのプログラムが閉じられていることを確認するよう、ユーザーがまだロック) USER_NAME =入力(「自分のユーザー名を入力してください:」) パスワード =入力(「自分のパスワードを入力してください:」) タグ = 真 COUNT = 0 オープンで(「PWD .TXT 'MODE = ' RT '=エンコード' UTF-を。8 ' )AS FILE1、\ オープン(' lock.txt 'MODE = 'RT '=エンコード' UTF-8を' FILE2として): のために私にFILE2: lock_name、lock_pwd。= i.strip()スプリット(' :' ) であれば USER_NAME == :lock_name プリント(' 该账号已被锁定!' ) タグ = Falseの ブレーク 他: 継続 しながら、タグ: のために J でFILE1: 名前、PWD = j.strip()分割(':' ) IF USER_NAME ==名とパスワード== PWD: 印刷(' ログイン成功' ) タグ = Falseの 他: 印刷(' !ログインに失敗しました' ) COUNT + = 1 IF COUNT == 3 : 印刷(' 失敗すぎそしてより多くの、アカウントがロックされている!「) オープン(と」lock.txt 「MODE = 」AT "、エンコード= ' UTF-8。' )FILE3 AS: RES =(' {}:{} \ N- ' .format(USER_NAME、パスワード)) file3.write(RES) タグ = Falseの BREAK 他: USER_NAME = INPUT(" してくださいもう一度自分のユーザー名を入力してください:「) パスワード =入力(」もう一度パスワードを入力してください:")
#2.2:プログラミングユーザー登録を実装した後、ログインすることができ、 #ヒント: ながら真: MSG = 「」「 0番出口 1ログイン 2が登録 」「」 印刷(MSG) CMD = INPUT(「>>コマンド番号を入力します。」).strip() IF ないのcmd.isdigit(): 印刷(' 愚かなプロング、入力されたデジタルコマンド番号でなければなりません' ) 続行 のIF CMD == ' 0 ' : BREAK のelif CMD == ' 1 ' : #ログ機能コード(追加:ネストされたループ間違っ終了の導入を介して3回を置くことができる前に) N- = 0 タグ = 真 ながらタグ: USER_NAMEは、 INPUT(= 「自分のユーザー名を入力してください:」) パスワードを = INPUTは、(" あなたのパスワードを入力してください:' ) オープン(と' pwd.txt 'MODE = ' RT 'エンコード= ' UTF-8。' )FILE1 AS: 用 I でFILE1: 名前、PWD。i.strip =()スプリット(' :' ) IF USER_NAME ==名とパスワード== PWD: 印刷(' ログインに成功!' ) タグ = Falseの BREAK 他: 印刷(' 口座番号やパスワードが間違っている!" ) のn + 1 = IFのn - == 3 : タグ = Falseの BREAK のelif CMD == ' 2 ': #登録機能コード USER_NAME = INPUTは(' :登録上記のIDを入力してください' ) パスワード = INPUTを(' :登録パスワードを入力してください' ) を開きます(と' pwd.txt '、MODE = ' ATは'、=エンコード「UTF-8を' )FILE2 AS: RES =(' {}:{} \ N- ' .format(USER_NAME、パスワード)) file2.write(RES) を印刷(' 登録に成功!" ) BREAK 他に: 印刷(「入力されたコマンドが存在しません」)