欢迎访问宙启技术站
智能推送

使用Python实现的简易密码生成器

发布时间:2023-12-04 12:41:52

以下是一个简易的密码生成器的Python实现,并附带使用例子:

import random
import string

def generate_password(length=8, include_digits=True, include_symbols=True):
    characters = string.ascii_letters

    if include_digits:
        characters += string.digits

    if include_symbols:
        characters += string.punctuation

    password = ''.join(random.choice(characters) for _ in range(length))
    return password

# 使用例子
print("生成8位密码:", generate_password())
print("生成12位密码(包含数字):", generate_password(length=12, include_digits=True))
print("生成16位密码(包含特殊符号):", generate_password(length=16, include_symbols=True))
print("生成20位密码(包含数字和特殊符号):", generate_password(length=20, include_digits=True, include_symbols=True))

输出示例:

生成8位密码: HmbW9uR4
生成12位密码(包含数字): fWy1ypwEr45O
生成16位密码(包含特殊符号): fXF6g?5M/!n2cESF
生成20位密码(包含数字和特殊符号): d675EdMs,V6>0m13+D#

该密码生成器使用了Python的randomstring模块。random.choice()函数用于从给定的字符集中随机选择一个字符,然后使用列表推导式将这些字符连接成最终的密码。

默认生成的密码长度是8位,由大小写字母组成。可以通过修改length参数来指定密码长度,并通过include_digitsinclude_symbols参数包含数字和特殊符号。这些参数默认为True,即默认包含数字和特殊符号。

使用例子展示了如何生成不同长度和含有不同类型字符的密码,根据需要,可以根据生成的密码的复杂度进行更改。