string模块及随机生成6位含数字、小写字母、大写字母、特殊符号的密码

string 常用属性

import string
import random

#string 常见用法
print(string.ascii_lowercase)  #打印a-z所有小写字母
print(string.ascii_letters) #打印 a-z A-Z 所有字母
print(string.ascii_uppercase) # 打印大写字母
print(string.digits) # 打印0-9 数字
print(string.punctuation) # 打印特殊字符
print(string.printable)#打印所有的大小写,数字,特殊字符
print(string.hexdigits) #打印十六进制的字符

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

 

生成随机密码:

import string
import random

#string 常见用法
low = string.ascii_lowercase  #生成小写
num = string.digits  #生成数字
upper = string.ascii_uppercase #生成大写
punct = string.punctuation # 特殊

low_1 = random.sample(low, 1)
num_1 = random.sample(num, 2)
upper_1 = random.sample(upper, 1)
punct_1 = random.sample(punct, 2)
# print(low_1, num_1,upper_1,punct_1)

list_1 = low_1 + num_1 + upper_1 + punct_1
random.shuffle(list_1)
pwd = ''.join(list_1)
print(pwd)

 

posted @ 2019-08-28 22:33  QQmini  阅读(1099)  评论(0编辑  收藏  举报