功能实现
1、一个六位数的随机密码生成器。
2、随机出来的密码不能与随机出来过的重复。
编程新手村选手,想看看如何实现的!
import random
# 生成随机6位随机数含字母
code = []
for i in range(6):
if i == random.randint(1, 5):
code.append(str(random.randint(1, 5)))
else:
code.append(chr(random.randint(65, 90)))
print(''.join(code)) # 转换成字符串
6位随机数字,换句话说,就是0到999999之间随机选个数字。问题在于怎样检查是否已经出现过。如果每次都重新运行程序,是无法保证和之前运行程序时生成的密码不一样的。而如果程序一直循环运行的话,可以加入一个容器,将每次生成的密码放入容器里进行比较。下面是个例子:
import random
p = set()
while True:
new = f'{random.randint(0,999999):0>6}'
if new not in p:
p.add(new)
break
print(p)