我正在使用Python生成4位數的隨機數,但我需要包含使其成爲密碼。我在下面解釋我的代碼。如何使用Python生成4位密碼隨機數
range_start = 10 ** (4 - 1)
range_end = (10 ** 4) - 1
password = randint(range_start, range_end)
這裏我生成4位數的隨機數,但它不包含任何密碼術,我需要使它成爲密碼隨機數。
我正在使用Python生成4位數的隨機數,但我需要包含使其成爲密碼。我在下面解釋我的代碼。如何使用Python生成4位密碼隨機數
range_start = 10 ** (4 - 1)
range_end = (10 ** 4) - 1
password = randint(range_start, range_end)
這裏我生成4位數的隨機數,但它不包含任何密碼術,我需要使它成爲密碼隨機數。
如果您在Python 3.6中生成PIN碼,請使用n = secrets.choice(range(1000, 10000))
;然後format(n, '04')
,然後過濾掉不需要的組合。
如果你被Python 2困住,random.SystemRandom
將生成密碼更安全的隨機數;使用
from random import SystemRandom
sr = SystemRandom()
n = sr.choice(xrange(1000, 10000))
pin = format(n, '04')
print(pin)
隨着choice
你也可以預濾器pincodes:
all_pins = [format(i, '04') for i in range(1000, 10000)]
possible = [i for i in all_pins if len(set(i)) > 1]
會過濾掉那些數字其組只有一個成員(即由只重複一個數字的),例如。
我正在使用python版本2.7。 – satya
@StefanPochmann是的,它是有效的,我只是教他們'選擇',以便下次他們不說「那麼選擇序列怎麼樣」 –
我不知道什麼是「照片上的隨機數字」。你需要澄清你在找什麼。 – Blckknght
我也不知道。提醒一下,有uuid'str(uuid.uuid4()。int >> 64)[0:4]'。 –
@Blckknght:抱歉拼寫錯誤。我已經更新了它。 – satya