python - 使用 python 和 ascii 值创建随机密码
问题描述
我想创建一个程序,告诉你一个随机密码并检查密码的有效性我创建了一个 33-126 的随机值(这是从键盘输出的 ascii 值),然后将其附加到密码并检查有效性。但它正在超时并且没有给出输出。当我调试它时,我看到它随机停止在一个随机点。密码采用列表形式,以使我的工作更轻松。我检查了密码的有效性列表(密码)是例如-password = ['2', 'f', 'W', '@', '/']
你可以看到密码 [0] 是 '2' 而不是 2 所以我创建了检查int type
所以它卡在那里
def makePassword():
password = []
for _ in range(1, random.randint(5, 21)):
rm = random.randint(33, 126)
ascii_value = chr(rm)
password.append(ascii_value)
return password
def isalnum(password):
password = list(password)
index = random.randint(0, len(password))
skw = chr(random.choice([random.randint(48, 57), random.randint(65, 90), random.randint(97, 122)]))
for i in password:
if not i.isalnum():
password.insert(index, skw)
return password
def isalpha(password):
password = list(password)
index = random.randint(0, len(password))
skw = chr(random.choice([random.randint(65, 90), random.randint(97, 122)]))
for i in password:
if not i.isalpha():
password.insert(index, skw)
return password
def isdigit(password):
password = list(password)
index = random.randint(0, len(password))
skw = chr(random.randint(48, 57))
for i in password:
if not i.isdigit():
password.insert(index, skw)
return password
def isupper(password):
password = list(password)
index = random.randint(0, len(password))
skw = chr(random.randint(65, 90))
for i in password:
if not i.isupper():
password.insert(index, skw)
return password
def islower(password):
password = list(password)
index = random.randint(0, len(password))
skw = chr(random.randint(97, 122))
for i in password:
if not i.isalnum():
password.insert(index, skw)
return password
word = makePassword()
for i in word:
if not i.isalnum():
word = isalnum(word)
if not i.isalpha():
word = isalpha(word)
if not i.isdigit():
word = isdigit(word)
if not i.isupper():
word = isupper(word)
if not i.lower():
word = islower(word)
print(word)```
解决方案
推荐阅读
- react-native - react-native link react-native-fs 命令报错
- javascript - 我在从数组 React Native 渲染数据时遇到问题
- firebase - 将 Firebase 身份验证限制为会话
- c# - 通过 dotnet 中的自定义属性发送 http 响应
- django - 如何在django中将变量保存到mysql数据库中
- github - 如何从历史记录中删除 repo 中不再存在的文件的提交
- javascript - facebook会在一段时间后删除上传图片的原始版本吗?
- arrays - 均值舍入为零的子数组的数量
- python - 如何防止直方图重叠(python)
- javascript - 使用 jQuery 从选择中删除选项