python随机生成指定长度的密码


python中的string对象有几个常用的方法用来输出各种不同的字符:

string.ascii_letters:输出ascii码的所有字符.

string.digits:输出 '0123456789'.

string.punctuation:ascii中的标点符号。

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

下面代码用于输出随机密码

import random,string
characters = string.ascii_letters + string.digits + string.punctuation
password = ''.join(random.choice(characters) for i in range(random.randint(8,12)))