随机模块应用-生成验证码(无图片)

Posted chrrydot

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了随机模块应用-生成验证码(无图片)相关的知识,希望对你有一定的参考价值。

方法一,通过choice方式生成验证码

此方法生成每次调用crate_code()会生成三个随机数,然后再三个随机数中选择一个,资源调用相对多些

import random

def v_code(code_length):
    res = []
    if isinstance(code_length,int):
        for i in range(code_length):
            ret = create_code()
            res.append(ret)
        return res
    else:
        print("请以数字形式输入多少位")


def create_code():   #生成随机验证码,通过随机choice的方式
    num = chr(random.randint(48, 57)) #随机数字
    alfs = chr(random.randint(65, 90)) #随机大写字母
    alfb = chr(random.randint(97, 122)) #随机大写字母
    s = str(random.choice([num,alfs,alfb]))
    return s
    #方法二,通过指定一个choice的方式指定
    # choice = random.randint(1,3)
    # if choice == 1:
    #     return chr(random.randint(48, 57)) #随机数字
    # elif choice ==2:
    #     return chr(random.randint(65, 90)) #随机大写字母
    # elif choice ==3:
    #     return chr(random.randint(97, 122)) #随机小写字母

if __name__ == "__main__":
    code = v_code(4)
    for i in range(4):
        code[i] = str(code[i])
    code_str =  ‘‘.join(code)
    print("数组类型的展示为:",code)
    print("转换成str类型后:",code_str)

方法二,通过random生成choice

此根据choice方式一次生成一次随机数

import random

def v_code(code_length):
    res = []
    if isinstance(code_length,int):
        for i in range(code_length):
            ret = create_code()
            res.append(ret)
        return res
    else:
        print("请以数字形式输入多少位")


def create_code():   #生成随机验证码,通过随机choice的方式
    # num = chr(random.randint(48, 57)) #随机数字
    # alfs = chr(random.randint(65, 90)) #随机大写字母
    # alfb = chr(random.randint(97, 122)) #随机大写字母
    # s = str(random.choice([num,alfs,alfb]))
    # return s
    #方法二,通过指定一个choice的方式指定
    choice = random.randint(1,3)
    if choice == 1:
        return chr(random.randint(48, 57)) #随机数字
    elif choice ==2:
        return chr(random.randint(65, 90)) #随机大写字母
    elif choice ==3:
        return chr(random.randint(97, 122)) #随机小写字母

if __name__ == "__main__":
    code = v_code(4)
    for i in range(4):
        code[i] = str(code[i])
    code_str =  ‘‘.join(code)
    print("数组类型的展示为:",code)
    print("转换成str类型后:",code_str)

以上是关于随机模块应用-生成验证码(无图片)的主要内容,如果未能解决你的问题,请参考以下文章

python模块之PIL模块(生成随机验证码图片)

python模块之PIL模块(生成随机验证码图片)

python模块之PIL模块(生成随机验证码图片)

第二百七十节,Tornado框架-生成验证码图片,以及验证码结合Session验证

随机验证码图片验证码和邮箱发送用户验证码

利用Django生成动态图片验证码