2023/4/15
努力学习python,想为以后可以有一份额外收入,如果有大神可以指点一下,我将不胜感激
如果有大神想以后拥有一个合作伙伴进行交流,我会尽力赶上您的脚步!
题目:要求随机生成四位数字验证码,四位数字以单个数字拼接起来,并让用户输入验证码进行验证是否正确,输入三次错误则终止代码,成功则直接结束
#写入一个验证码案例
str_1 = '0123456789'
import random
code = '' #先定义一个空的变量,作为收纳验证码的随机数
for i in range(4):
ran = random.randint(0,len(str_1)-1) #这里是随机数,是0-9的随机数值,用来选择str_1的数值位置
code += str_1[ran] #code += str_1[ran] 假设ran是1,那么str_1的值为1,code += 1 code = 1 这里要明白随机位置str_1[ran]的含义,code = code + 随机数值,拼接起来
#那么验证码是四位如何随机打印呢? 随机四个ran随机值,并且四个code拼接吗?
#ran = random.randint(0,len(str_1)-1)
#code += str_1[ran] *3次
#这样做冗余性太大了,不要这样做!!! 要学会使用循环! 那么该如何做呢? 返回ran前面,使用for循环或者while循环
print('验证码是:'+code) #那么我们用户输入该验证码,可以往下面加入一个判定!
for o in range(1,4): #这里是判断验证码是否正确!
user = input('请输入验证码:')
if user != code:
print('输入有误,请重新输入,您还有{}/3次机会'.format(o))
else:
print('输入正确!')
break
也要明白为什么len(str_1)需要减1
那么下面出另外一个问题,定义str_1为A-Z,a-z,0-9 大小写字符等
我们输入验证码,一般无论输入大写还是小写,都会是正确的,那么在代码会加入一个判定全为小写,利用上一节将的lower的内建函数引用进去!
提示:在最后的if判断,将if user != code代码改为 if user.lower != code.lower 两边同时转换为小写字符!
以上为总结知识点,出自哔哩哔哩千峰宋如宁老师课程