学python(04)——函数生成N位验证码

来源:互联网 发布:用友软件 t系列 编辑:程序博客网 时间:2024/06/14 00:48


使用函数生成N位验证码,验证码随机为数字、大写字符、小写字符



import random    #引入random函数
def sf(cd,lx):     #cd代表位数,lx代表种类


    if lx  == 0:     #如果lx= 0,则验证码都为数字
        str1 = ''     #生成一个空字符串用来接收验证码
        i = 0
        while i <cd:    #用I循环 位数
            str1 += chr( random.randrange(48,58))      #用空字符串接收cd个数字
            i +=1
        return str1       #返回cd个随机数字.
    elif lx  == 1:    #如果lx= 1,则验证码都为大写英文字母
        str1 = '    #生成一个空字符串用来接收验证码
        i = 0
        while i <cd:    #用I循环 位数
            str1 += chr( random.randrange(65,91))     #用空字符串接收cd个大写的英文字母
            i +=1
        return str1
    elif lx  == 2:     #如果lx= 2,则验证码都为小写英文字母
        str1 = ''     #生成一个空字符串用来接收验证码


#跟兄弟连Python学习交流、资源共享群:563626388 QQ
        i = 0
        while i <cd:
            str1 += chr( random.randrange(97,123))     #用空字符串接收cd个大写的英文字母
            i +=1
        return str1
    else: #如果lx不属于以前情况,则为混合验证码
        str1 =''  #生成一个空字符串用来接收验证码
        i = 0
        while i < cd :
            ppp = random.randrange(48, 123)          
            if ppp  in range(58,65):                 #在48-123
                continue                                     #范围内的
            elif ppp  in range(91,97):            #ascii码属于
                continue                                    # 数字、大写英文
            else:      #、小写英文中,
                str1 += chr(ppp)  #则用空字符串相加
            i += 1
        return str1
       
ss = sf(4,9)
print(ss)



Python学习交流、资源共享群:563626388 QQ