使用Python的密码生成器

时间:2015-08-02 18:52:36

标签: python

我从其中一个网站获得了一个程序来制作密码生成器。

import string
from random import *
characters = string.ascii_letters + string.punctuation  + string.digits
password =  "".join(choice(characters) for x in range(randint(8, 16)))
print password

有人可以解释将存储在“密码”变量中的内容吗?它是一个大小写,标点符号和数字长度为8和16的组合的值吗?

有没有更简单的方法来使用python程序制作密码生成器?

1 个答案:

答案 0 :(得分:1)

如果您打印characters,您将获得一个字符和符号列表。

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~0123456789

下一行将使用此各种各样的字符随机选择。添加或删除字符将允许您自定义组成密码的字符。

您可以通过快速谷歌搜索了解joinchoicerandint功能。如果将此代码分解为更多行和变量,则可能更有意义。有很多短手被压成一条线。

import string
import random
characters = string.ascii_letters + string.punctuation  + string.digits

password = ""
password_length = random.randint(8, 16)

for x in range(password_length):
    char = random.choice(characters)
    password = password + char

print password