使用Python生成200个激活码的实现方法


Posted in Python onNovember 22, 2019

题目:使用 Python 生成 200 个不重复的激活码

编写思路

# 激活码一般是由26个大写字母和10个数字任意组合而成
# 长度为12位或者16位的居多激活码
# 一个激活码里的字符是可以重复的,而且必须要保证激活码是不能重复的

测试用例

# 1、随机生成字符:数字加字母
# 2、生成200个
# 3、去重

编码:

第一步:随机生成16位字母跟数字的字符串

1.调用ramdom模块,使用了import random

2.choice() 方法返回一个列表,元组或字符串的随机项

使用了random.choice(seed),从seed中随机获取字符串

3.join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串

join()方法语法:str.join(sequence)

使用"".join(sa)将随机生成的16个字符串连接在一起

import random

# 生成16位字符串
def random_str():
  seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
  sa = []
  for i in range(16):
    sa.append(random.choice(seed))
  salt = "".join(sa)
  print(salt)
  return salt

第二步:生成200个字符串

使用for循环,调用random_str()函数

for i in range(200):
     L.append(random_str())

第三部:删除重复的激活码

1.添加删除重复激活码函数

当两个激活码相同时,打印出重复激活码,并对该激活码进行标识

2.删除重复激活码

对标识过的激活码进行删除

def Removal():
  for i in range(200):
    for j in range(i+1,200):
      if L[i] == L[j]:
        print("重复的激活码:", L[i])
        L[i] = '-1'
i = 0
while i < len(L):
  if L[i] == '-1':
    print("删除重复元素", L[i])
    L.remove(L[i])
    i -= 1
  else:
    i +=1

完整代码如下:

import random

# 生成16位字符串
def random_str():
  seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
  sa = []
  for i in range(16):
    sa.append(random.choice(seed))
  salt = "".join(sa)
  print(salt)
  return salt

# 去除重复激活码
def Removal():
  for i in range(200):
    for j in range(i+1,200):
      if L[i] == L[j]:
        print("重复的激活码:", L[i])
        L[i] = '-1'


if __name__ =="__main__":
  L = []
  for i in range(200):
    L.append(random_str()) #生成两百个激活码
  L[0] = L[1] #校验L[0]=L[1]时,是否删除重复
  Removal()
  i = 0
  while i < len(L):
    if L[i] == '-1':
      print("删除重复元素", L[i])
      L.remove(L[i])
      i -= 1
    else:
      i +=1

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用Python的Django框架完成视频处理任务的教程
Apr 02 Python
python递归查询菜单并转换成json实例
Mar 27 Python
老生常谈python的私有公有属性(必看篇)
Jun 09 Python
学习python的前途 python挣钱
Feb 27 Python
django云端留言板实例详解
Jul 22 Python
python中的&amp;&amp;及||的实现示例
Aug 07 Python
使用TensorFlow直接获取处理MNIST数据方式
Feb 10 Python
Python发送手机动态验证码代码实例
Feb 28 Python
python实现QQ邮箱发送邮件
Mar 06 Python
python3 使用traceback定位异常实例
Mar 09 Python
Python面向对象程序设计之继承、多态原理与用法详解
Mar 23 Python
使用python从三个角度解决josephus问题的方法
Mar 27 Python
Python的几种主动结束程序方式
Nov 22 #Python
python实现超市商品销售管理系统
Nov 22 #Python
python实现二分类的卡方分箱示例
Nov 22 #Python
python的等深分箱实例
Nov 22 #Python
基于python实现学生信息管理系统
Nov 22 #Python
基于python cut和qcut的用法及区别详解
Nov 22 #Python
python创建学生成绩管理系统
Nov 22 #Python
You might like
了解Joomla 这款来自国外的php网站管理系统
2010/03/11 PHP
PHP判断文章里是否有图片的简单方法
2014/07/26 PHP
PHP实现动态柱状图改进版
2015/03/30 PHP
thinkPHP框架通过Redis实现增删改查操作的方法详解
2019/05/13 PHP
PHP Cli 模式设置进程名称的方法
2019/06/12 PHP
Javascript 继承实现例子
2009/08/12 Javascript
jquery validation插件表单验证的一个例子
2010/03/03 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
js取两个数组的交集|差集|并集|补集|去重示例代码
2013/08/07 Javascript
完美兼容多浏览器的js判断图片路径代码汇总
2015/04/17 Javascript
基于ajax实现文件上传并显示进度条
2015/08/03 Javascript
JS中如何实现点击a标签返回页面顶部的问题
2017/01/19 Javascript
javascript 中Cookie读、写与删除操作
2017/03/29 Javascript
移动端手指放大缩小插件与js源码
2017/05/22 Javascript
iframe与主框架跨域相互访问实现方法
2017/09/14 Javascript
jQuery实现的鼠标响应缓冲动画效果示例
2018/02/13 jQuery
vue中使用element-ui进行表单验证的实例代码
2018/06/22 Javascript
Vue 中的受控与非受控组件的实现
2018/12/17 Javascript
聊聊Vue 中 title 的动态修改问题
2019/06/11 Javascript
Python获取文件ssdeep值的方法
2014/10/05 Python
Python打印输出数组中全部元素
2018/03/13 Python
对numpy和pandas中数组的合并和拆分详解
2018/04/11 Python
python 实现在tkinter中动态显示label图片的方法
2019/06/13 Python
Python3批量生成带logo的二维码方法
2019/06/24 Python
pandas条件组合筛选和按范围筛选的示例代码
2019/08/26 Python
西班牙太阳镜品牌:Hawkers
2018/03/11 全球购物
编程用JAVA解析XML的方式
2013/07/07 面试题
高三自我鉴定
2013/10/23 职场文书
大学生村官任职感言
2014/01/09 职场文书
前厅收银主管岗位职责
2014/02/04 职场文书
马云北大演讲完整版:真心话,什么才是阿里的核心竞争力?
2014/04/04 职场文书
大学新闻系求职信
2014/06/03 职场文书
建筑结构施工求职信
2014/07/11 职场文书
家具商场的活动方案
2014/08/16 职场文书
常务副县长“三严三实”对照检查材料思想汇报
2014/10/05 职场文书
会议接待欢迎词范文
2015/01/26 职场文书