これは私のパスワードチェッカーコードです(有効かどうか)
有効になるまで、パスワードチェッカーを5回実行する必要があります。 有効な場合は、ループから抜け出す必要があります。
パスワードは7文字以上にする必要があります。 パスワードには、数字(少なくとも2つ)と文字の両方を含める必要があります。 (そうでない場合は、Falseを返します) スペースがないはずです。 数字と文字以外のものがある場合、Falseを返す必要があります
forループでpassword_checker関数を実行する必要があります。 しかし、「if」の後に何を言うべきかよくわかりません。
私が試してみました -
if a=False:
print(password_checker(i))
print(Invalid password)
しかし、それはうまくいきませんでした。
また、forループでpassword_checker()を呼び出す方法がわかりません。
最後に、forループにブレークを入れる必要があります 入力のパスワードが有効な場合。 しかし、私はそれを配置するための適切な部分がどこにあるかわからない
def password_checker(password):
a=True
num_Count = 0
if password.isalpha() == True:
print ("error! needs numbers")
a = False
if password.isnum() == True:
print ("error! needs characters")
a = False
if password.isspace() == True:
print ("error! no space allowed")
a = False
if len(password)<=8:
print ("error! needs more than 8 characters")
a = False
for i in range(0, 10):
num_Count += password.count(i)
if num_Count(password.count()) < 2:
print("error! needs at least 2 numbers")
a = False
password = str(input("Enter password: "))
for i in range(0,5):
if ____________________:
print(password_checker(i))
print("Invalid password")
else:
print(password_checker(i))
print("Valid password")
break
関数を機能させるには、どのようにコードを修正する必要がありますか?
回答 1 件
このコードはあなたのために働くでしょう、今私に説明させてください:
フローは次のとおりです。
これは5回行われます(forループ内):
1)ユーザーにパスワードを要求します。
2)パスワードが有効かどうかを確認します。
3)有効/無効な結果に従って印刷します。
forループを使用しているという事実は、実際に反復インデックスを使用する必要はありません(この場合は「i」を意味します)