#利用random模块写一个6位的随机验证码,验证码内包含字母、数字(随机出现)
from random import randint,shuffle
def daluan(strChar):
l = list(strChar)
shuffle(l)
return ''.join(l)
def grantStr(strLen):
if strLen < 2:
return '不处理生成三位一下的字符串的请求'
charList = [chr(i) for i in range(65, 91)]
lowerCharList = [chr(i) for i in range(97, 123)]
totalCharList = charList + lowerCharList # 得到字母种子列表
baseChar = totalCharList[randint(0, 51)] # 随机取出一个字母
baseNum = str(randint(0, 9)) # 随机取出一个数字
# 从剩下的四个字符里随机取出字母或数字,总计四位
remainNumLen = strLen - 2
randCharLen = randint(0, remainNumLen) #计算应该补齐的字符串长度
randNumLen = remainNumLen - randCharLen #计算应该补齐的数字长度
randChar = randNum = ''
if randNumLen:
numList = range(0, 10)
for i in range(0, randNumLen):
randNum += str(numList[i])
if randCharLen:
for j in range(0, randCharLen):
randChar += totalCharList[j]
return daluan(''.join(([baseChar,baseNum,randChar,randNum]))) #拼接字符串并打乱顺序后返回
if __name__ == '__main__':
st = grantStr(6)
print(st)
利用random模块写一个6位的随机验证码,验证码内包含字母、数字(随机出现)
猜你喜欢
转载自blog.csdn.net/sasibingdu/article/details/115009885
今日推荐
周排行