验证码生成原理即Python代码实现

验证码的生成步骤:


方法一:

1.关键在于random能随机获取
2.首先建立一个字符串包含0-9,A-z(可根据实际要求添加字符),命名为Number
3.一般验证码是既定长度,我们这里使用4-6位随机长度验证码,长度用length表示
4.每次random获取一位数字命名为index,通过下标index获取到到Number[index]
5.执行length次循环
6.每次将获取的Number[index]放入code中
7.循环结束,输出code
方法一为每一种验证码的原理所在,即使不是python,也同样可以使用此原理来思考什么是验证码的生成。
同理在一般情况下验证码在页面以图片显示,其实就是,数字获取后,根据各自对应的图片,组合输出到页面。
方法二:
1.关键在于random能随意获取
2.首先建立一个字符串包含0-9,A-z(可根据实际要求添加字符),命名为Number
3.一般验证码是既定长度,我们这里使用4-6位随机长度验证码,长度用length表示
4.python中有一个random.choice('_obj')。用法是可以随机获取_obj中的一个元素
5.所以我们只需要循环length就可以获取到所需随机数。

代码实现:
# 方法一
import random

Number = 'OPASDFGHJKLZXCVBNM01234QWERTYUI56789'
code = ''
length = random.randint(4, 6)
for i in range(length):
    # 有36位,即从0-35
    index = random.randint(0, 35)
    # 逐个加入到code中
    code += Number[index]
else:
    print('方法一验证码:' + code)

# 方法二

# python中print有end='\n',所以会跳一行
print('方法二验证码:', end='')
for j in range(length):
    print(random.choice(Number), end='')

结果展示:

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhong_Q

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值