python如何生成非重复cdkey
转载自品略图书馆 http://www.pinlue.com/article/2020/04/1003/4810139721035.html
代码:
# -*- coding: utf-8 -*-
from random import choice
import string
import os,re,sys
dict={}
path=os.getcwd()
#specialchars="!@#$%^&*()" #设置特殊字符(可选)
def GenPasswd(length):
# chars=string.letters+string.digits+specialchars
chars="23456789abcdefghjkmnpqrstuvwxyzABCDEFGHJKMNPQRSTUVWXYZ" #去掉字母o和O,字母i和I,字母l和L,方便区分数字0,1
num = 5;
while num > 0:
num = num - 1
j = "".join([choice(chars) for i in range(length)])
#以下判断为了避免同次执行时有重复【随机码】
if not dict.has_key(j):
dict[j]=i
return 0
print("已经重复%d次获取到相同的key,退出程序\n",num)
exit()
def usage():
usages="""
*******************
使用方法和提示:
输入[前缀] 如果全是空格或TAB(或空格和TAB的混合)默认为无前缀(等同于直接回车键)
输入[密码长度] 最小大于0
输入[密码数量] 最小大于0,该项不填,默认只生成1个密码字符
*******************
"""
print usages,
def usage_warning():
print "#"+"-"*78+"#"
u_w="""
请注意:输入[前缀] 如果全是空格或TAB(或空格和TAB的混合)默认为无前缀(等同于直接回车键)
"""
print u_w,
print "#"+"-"*78+"#"
def check(input_str):
if re.match(r"^\d+$", input_str):
pass
else:
print "填写随机码的长度和数量时,输入的字符[都必须]是数字,请重新执行!"
print("\n***按任意键继续...")
os.system("pause>nul")
def logic(arg1,arg2,arg3):
if (arg1 != "") and (arg2 == ""):
check(arg1)
if (int(arg1) != 0):
GenPasswd(int(arg1))
else:
usage()
for m in dict.keys():
merge = arg3 + m
print merge
f.write("%s\n"%merge)
elif (arg1 != "") and (arg2 != ""):
check(arg1)
check(arg2)
if (int(arg1) != 0) and (int(arg2) != 0):
for i in range(int(arg2)):
GenPasswd(int(arg1))
for m in dict.keys():
merge = arg3 + m
print merge
f.write("%s\n"%merge)
else:
usage()
else:
usage()
if __name__=="__main__":
f=open("%s/code.txt"%path,"a")
print "#"+"-"*78+"#"
print "\t功能:任意长度,任意数量 包含大小写字母,数字的随机码生成"
print "\t更新:加入前缀码输入功能"
print "\t备注:去掉字母o和O,字母i和I,字母l和L,方便区分数字0,1"
print "\t"+"writed by:联运支持 [@boban 2013-04-01]"
print "#"+"-"*78+"#"
#print "***请输入参数***:"
arg3 = raw_input("*随机码前缀 请输入【数字或字母或字数混合】,可空):")
arg1 = raw_input("*随机码长度 请输入【数字】,必填,备注:该项不包含"前缀"长度):")
arg2 = raw_input("*随机码数量 请输入【数字】,可空,备注:输入需要的随机码数量,若为空,则默认生成1个随机码):")
if re.match(r"^\s+$", arg3):
usage_warning()
arg3=""
logic(arg1,arg2,arg3)
else:
logic(arg1,arg2,arg3)
f.close()
print("\n*随机码已保存在程序所在目录code.txt文件中,请检查\n***按任意键退出...")
os.system("pause>nul")
python如何生成非重复cdkey相关推荐
- python之生成不重复的随机密码
''' 第一种方法:判断新生成的值是否在已经生成的密码字符串之中 第二种方法:每生成一个密码字符就把它从密码库中移除问题:怎么才能使用递归的方法实现 ''' #不能用递归的方法 # def judge ...
- python怎么生成不重复的字符_如何在不重复的情况下生成一组字符的所有组合?...
我有以下清单:['a', 'b', 'c'] 我正在寻找一种方法来生成所有可能的字符串,这些字符串包含以下限制:一个字符不能出现多次(aab,aba,abca等无效) 可以排除字符(ab有效,即使c不 ...
- python 随机生成不重复的6位数_随机生成6位数、随机生成不重复的6位数
随机生成一个几位数,这种比较常见的操作今天我们来看一下,例如随机生成6位数,直接来简单明了的吧: int num = (int) ((Math.random() * 9 + 1) * 100000); ...
- python 组合数字和字符_python无限生成不重复(字母,数字,字符)组合的方法
python无限生成不重复(字母,数字,字符)组合的方法 使用python自带的itertools模块 调用其product函数 传入我们想组合生成的字符数据 便会源源不断的生成组合 而且不会重复 r ...
- php 不重复订单号,php如何生成不重复的订单号,php不重复订单编号
php如何生成不重复的订单号PHP如何生成重复的订单号,php生成不重复订单号的方法如下:1.利用数据库的主键值生成自增订单号:2.实现"日期自增号"的订单号:3.生成随机订单号: ...
- python随机生成k个不重复的随机数_使用Python生成不重复的随机值
uuid是128位的全局唯一标识符(univeral unique identifier),通常用32位的一个字符串的形式来表现,自带了uuid模块来进行uuid的生成和管理工作. python中的u ...
- 微课|中学生可以这样学Python(例5.1):生成不重复的随机数
适用教材: 董付国,应根球.<中学生可以这样学Python>.清华大学出版社,2017. 第5章 Python序列及应用 5.1.6 精彩例题分析与解答 例5.1 生成不重复的随机数 ...
- python使用random生成不重复的随机数
注:如果直接使用random无法避免生成不重复的随机数,除非使用set,所以换一个思路,在所给的区域的所有数值中选择一定数量的数即可,只要给定的数不存在重复值,那么就不会被选出同样的数. 可根据需求修 ...
- python统计excel中重复数据_Python中用pandas对标Excel自带功能——去除重复项
经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死.后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器-- pandas 前言 有时候数据中出 ...
最新文章
- oracle补丁怎么配置,如何检查Oracle补丁是否已安装?
- mybatis初始化过程
- java学习(126):throw向上抛出异常
- 帧同步和状态同步(二)案例分析
- php kibana查询,搜索您的数据 | Kibana 用户手册 | Elastic
- Linux下通配符总结
- 三顺,因为你,我笑了。
- CentOS7安装配置启动MySQL(附解决password does not satisfy)
- owncloud个人私有云 一键安装包操作指南
- c mysql开发工具_Windows平台下Mysql C程序设计
- 阿里云短信验证码平台使用demo
- 【java毕业设计】基于javaEE+SSM+MySql的BS架构微博系统设计与实现(毕业论文+程序源码)——BS架构微博系统
- U盘被写保护或无法写数据无法格式化的问题解决
- TB6560 驱动板资料
- Oracle sql大于和小于号的转义写法
- 关于我AbortME
- GST1212M非制冷红外探测器调试成像
- android 球面 旋转 坐标系,天球坐标系和地球坐标系-GPS定位原理及应用-电子发烧友网站...
- 用django开发一个报修系统
- 北京工业计算机英语口语复试,北京工业大学复试回忆
热门文章
- IPV6_PPPOE服务器搭建
- Python安装教程(版本3.8.10)windows10
- AS第一次作业:实现APP门户界面框架设计
- 第十四届蓝桥杯三月真题刷题训练——第 10 天
- Android开发丶集成微信原生分享并于分享网页时加载网络缩略图
- PictureCutting图片批量裁切(裁剪)工具
- 基于PHP+MSQL的在线邮箱管理系统的设计与实现【开题报告、源码】
- 程序员如何规划自己的职业生涯?
- 关于汽车行业生产仿真(物流仿真)的必要性论述
- 怎样对三维切片 MATLAB,绘制切片中的三维矩阵 - MATLAB