本来想穷举所有密码,算法要么就嵌套太深,要么就特别耗内存(会溢出).后来选了一个简单重复概率很低的算法.代码如下:
复制代码 代码如下:
# -*- coding:utf-8 -*-
'''
@ function: 生成随机密码字典
'''
import random
class Dictor():
CSet=' abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789~!@#$%^&*()_-+=/*<>:;\'"[]{}|'
def __init__(self,minlen,maxlen):
if maxlen>minlen:
self.__minlen=minlen
self.__maxlen=maxlen
else:
self.__minlen=maxlen
self.__maxlen=minlen
def __iter__(self):
return self
def __next__(self):
ret=''
for i in range(0,random.randrange(self.__minlen,self.__maxlen+1)):
ret+=random.choice(Dictor.CSet)
return ret
if __name__=='__main__':
for str in Dictor(6,16):
print(str)
- 上一篇:Python删除指定目录下过期文件的2个脚本分享
- 下一篇:使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子
相关文章
相关视频
- 在Django框架中运行Python应用全攻略
- 在Python的Django框架中创建和使用模版
- python获取元素在数组中索引号的方法
- 浅谈python中截取字符函数strip,lstr...
- python实现随机密码字典生成器示例
- 轮播图案例讲解
- 轮播图案例的预备知识(3)
- 轮播图案例的预备知识(2)
- 轮播图案例的预备知识(1)
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论
立即提交