用python生成一个8位不重复的大写字符和数字的邀请码

用python生成一个8位不重复的大写字符和数字的邀请码

生成一个只含大写字母和数字的邀请码,类似AUQN2YCI,数量可能在5000个左右,不能重复。那么最简单的思路就是,假设是8位的嘛,那就一位一位来嘛,从"ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"中随机取一个,取8次,然后把这个生成好的邀请码放在一个列表里。每生成一个新的代码,去列表里看看有没有重复的。

道理很简单,python厉害的地方在于,这段逻辑可以直接用几个内建函数搞定。。
首先,import内建模块random

然后厉害了

def GetRandomCode():
a = random.sample(“ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789”, 8)
code = “”
code = code.join(a)
return code
random.sample方法,应该是有很多重载的,这里两个参数,一个是str,众所周知python的str是列表,相当于传了一个列表和一个数字进去,这个方法的意思,是从列表中,取若干个不重复的元素,获得一个新的列表。完了之后我们要获得的是字符串嘛,所以要运行下join方法,就是从一个列表获得一个字符串,这样就得到了一个邀请码。然后

def GetRamdomCodeList(count = 50):
codeList = []
while len(codeList) < count:
code = GetRandomCode()
if code not in codeList:
codeList.append(code)
return codeList

这样就完成了限定数量的激活码的获得,简直简单的不要不要的。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值