で強力なパスワードジェネレータを作成する


どのようにPythonで強力なパスワードを生成する?
見ましょう👇🏻

ステップ1
→ 最初のインポートビルド文字列モジュール
→ すべての文字(大文字、小文字、数字、句読点)をそれぞれのリストに格納する


ステップ2
→ パスワードの文字数の入力を取り、いくつかの条件を追加するように間違った入力を扱うことができます.


ステップ3
→ ランダムビルドモジュールとshuffleのすべてのリストをインポートビルド
→ ランダムに各リストをシャッフル.シャッフルする
→ 私たちは30 %の大文字(ユーザーによって指定された文字数)、30 %小文字、20 %の数字と20 %の特殊文字でパスワードを作成します


ステップ4
→ すべての4リストから30 %、30 %、20 %、20 %のルールとして収集文字
→ 今すぐshuffleのパスワードパターンをunguitedを作るための最終的な収集リスト
→ では最後のリスト要素に""を付けます.join ()


最終コード
import string
import random

s1=list(string.ascii_lowercase)
s2=list(string.ascii_uppercase)
s3=list(string.digits)
s4=list(string.punctuation)

characters_number=input("Enter the numbers of characters of your password: ")
while True:
    try:
        characters_number=int(characters_number)
        if characters_number < 6:
            print("you need at least 6 characters for a strong password !")
            characters_number=input("Enter the numbers of characters AGAIN: ")
        else:
            break
    except:
        print("X X X    please enter the number of characters ONLY !!!")
        characters_number=input("Enter the numbers of characters: ")

random.shuffle(s1)
random.shuffle(s2)
random.shuffle(s3)
random.shuffle(s4)
# 30% of the characters_number👇🏻
end1=round(characters_number * (30/100)) 
# 20% of the characters_number👇🏻
end2=round(characters_number * (20/100))    

s=[]
for i in range(end1):
    s.append(s1[i])
    s.append(s2[i])

for i in range(end2):
    s.append(s3[i])
    s.append(s4[i])

random.shuffle(s)
password="".join(s[0:])
print(f'your password is : {password}')
outputをチェックしてください