编写一个西数,生成随机密码,要求:密码长度不能少于8位,不能高于 16位,并且字符需包含大小写字母和数宇。并输出结果
时间: 2023-07-16 08:14:29 浏览: 74
产生随机密码(字母,数字,符号)
5星 · 资源好评率100%
好的,以下是一个Python的实现:
```python
import string
import random
def generate_password(length=8):
"""
生成随机密码
:param length: 密码长度,默认为8
:return: 随机密码
"""
# 密码长度不能少于8位,不能高于16位
if length < 8 or length > 16:
length = 8
# 构造密码字符集
chars = string.ascii_letters + string.digits
# 确保密码中包含大小写字母和数字
password = ''
while not (any(c in password for c in string.ascii_lowercase) and
any(c in password for c in string.ascii_uppercase) and
any(c in password for c in string.digits)):
password = ''.join(random.choice(chars) for _ in range(length))
return password
# 生成一个长度为12的随机密码
password = generate_password(12)
print(password)
```
输出示例:
```
uE8sKd9LhX5y
```
阅读全文