DB-TrendSetter
作者DB-TrendSetter联盟成员·2016-05-04 17:49
数据库架构师·公司

python开发的生成符合规则的密码

字数 1289阅读 1108评论 0赞 1

由于集团有安全检查,定期需要更改各数据库账号对应的密码,所以开发基于特定规则,随机生成的密码,需要的拿走。初学,输出的head有点傻。有好的想法,可以@我

# coding:utf-8

import random
import string

def generate_verify_code(len):

    code_list1 = ['!', '#', '$', '%', '&', '(', ')', '*', '@', '[', ']','?','~']
    code_list2 = [ ]

    #生成密码
    for i in range(13):
        code_list2.append(code_list1[i])
    for i in range(10):
        code_list2.append(str(i))
    for i in range(65,91):
        code_list2.append(chr(i))
    for i in range(97,123):
        code_list2.append(chr(i))

    myslice = random.sample(code_list2,len)
    verify_code = ''.join(myslice)
    

    #判断生成的密码是否符合规则
    i=d=u=l=s=o=0
    for i in range(8):  
        if verify_code[i] in string.digits:  
           d += 1  
        elif verify_code[i] in string.uppercase:  
           u += 1  
        elif verify_code[i] in string.lowercase:  
           l += 1  
        elif verify_code[i] in code_list1:
           s += 1
        else:
           o += 1
    i+=1
    if d > 0 and u > 0 and l > 0 and s > 0:
        if verify_code[1] is not 0: 
           print verify_code," ",d,"   ",u,"        ",l,"      ",s

print "密码""       ""数字""  ""大写字母""  ""小写字母""  ""特殊字符"

for i in range(100):
     generate_verify_code(8)

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

1

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

  • RDS for PostgreSQL
    评论 0 · 赞 0
  • DB2 BLU
    评论 0 · 赞 1
  • slow import (troubleshooting) ---转载
    评论 0 · 赞 0
  • DB2故障SQL0901N解决
    评论 0 · 赞 1
  • I/O 类型概念的介绍(CIO,DIO,AIO)
    评论 0 · 赞 0
  • 相关文章

    相关问题

    相关资料

    X社区推广