簡體   English   中英

每次運行 for 循環時如何打印隨機密碼

[英]How do I print random passwords every time I run through a for loop

你好,現在我一直在研究密碼生成器。 我希望能夠從一次運行中獲得多個密碼。 而不是必須多次運行代碼。 現在代碼詢問用戶他們想要多少個密碼然后他們得到這些密碼。 但是我設置了一個 for 循環來執行此操作,它給出了相同的密碼 x 次。 但我希望它給我一個不同的密碼 x 次

繼承人的代碼:

    import random

upper = "ABCDEFGHIJKLMNOPQURSTUVWXYZ"

lower = "abcdefghijklmnopqurstuvwxyz"
numbers = "1234567890"
symbols = "!@#$%^&*()"

string = upper + lower + numbers + symbols
length = 16

password = "".join(random.sample(string, length))

passNum = int(input("How many passwords do you want?: "))

for i in range(passNum):
    print("Your new password is: " + password)

現在,您只創建一個密碼。 您需要將password =...行添加到循環中,以便在每次迭代時創建一個新密碼。

import random

upper = "ABCDEFGHIJKLMNOPQURSTUVWXYZ"

lower = "abcdefghijklmnopqurstuvwxyz"
numbers = "1234567890"
symbols = "!@#$%^&*()"

string = upper + lower + numbers + symbols
length = 16



passNum = int(input("How many passwords do you want?: "))

for i in range(passNum):
  password = "".join(random.sample(string, length))
  print("Your new password is: " + password)

在循環中創建password ,而不是之前一次

passNum = int(input("How many passwords do you want?: "))
for i in range(passNum):
    password = "".join(random.sample(string, length))
    print("Your new password is: " + password)

請注意, sample生成給定值的唯一組合,以進行 N 獨立選擇,使用choices (做 N choice


注意string package 包含字符列表

from string import ascii_letters, digits

symbols = "!@#$%^&*()"
values = ascii_letters, digits + symbols

也有punctuation ,但比你的符號大得多

# from string import punctuation 
punctuation = r"""!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~"""

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM