栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python编程第一站-简单密码字典生成

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python编程第一站-简单密码字典生成

目录

一、需要用到的python模块

二、脚本编写

三、第二种方法优势


一、需要用到的python模块

itemtools模块简单了解如下:

impor itertools

# product(*iterables,repeat=n)
# 1)当repeat=1时,相当于把‘abcd’和xy进行组合,但是前后顺序只能时‘abcd’在‘xy’前面
'''''''''
ite = itertools.product('abcd','xy',repeat=1)
list1 = list(ite)

print(f'长度为:{len(list1)}')  # 长度为:8
print(list1)    # [('a', 'x'), ('a', 'y'), ('b', 'x'), ('b', 'y'), ('c', 'x'), ('c', 'y'), ('d', 'x'), ('d', 'y')]
'''''''''

# 2)当repea=2时,相当于把‘abcd’复制一份,把‘abcd’和‘abcd’进行组合
'''''''''
ite1 = itertools.product('abcd',repeat=2)
list2 = list(ite1)

print(f'长度为:{len(list2)}')  # 长度为:16
print(list2)    # [('a', 'a'), ('a', 'b'), ('a', 'c'), ('a', 'd'), ('b', 'a'), ('b', 'b'), ('b', 'c'), ('b', 'd'), ('c', 'a'), ('c', 'b'), ('c', 'c'), ('c', 'd'), ('d', 'a'), ('d', 'b'), ('d', 'c'), ('d', 'd')]
'''''''''

后续方法中还会用到os、sys模块,可自行百度学习;

二、脚本编写

1.简单的密码字典生成脚本

'''''''''

说明:

1)words后面是想要随机排列组合的字符;

2)生成的排列组合密码都将保存在本地生成的pass.txt中

3)repeat后面的数字是生成几位数字的密码

'''''''''

import itertools as ite
words = '1234567890qwertyuiopasdfghjklzxcvbnm~!@$%^&*'
r = ite.product(words,repeat=3)
dic = open('pass.txt','a')
for i in r:
    dic.write(''.join(i))
    dic.write(''.join('n'))

dic.close()


2. 简单的密码字典生成脚本优化 

'''''''''

说明:

1)执行脚本后输入需要随机组合的字符和密码位数;

2)生成的排列组合密码都将保存在本地生成的pass.txt中

3)repeat后面的数字是生成几位数字的密码

'''''''''

import itertools as ite
import sys,os

words = sys.argv[1]
num = int(sys.argv[2])
path = str(os.path)
r = ite.product(words,repeat=num)

with open('pass.txt','a') as f:
    for i in r:
        f.write(''.join(i))
        f.write(''.join('n'))
print('已生成由'+words+'随机组成的'+str(num)+'位的密码字典!')
print('密码字典名称:pass.txt')
print('字典路径:',path)
执行:
在终端执行:python .test.py abc 3
已生成由abc随机组成的3位的密码字典!
密码字典名称:pass.txt
字典路径: 

三、第二种方法优势
# 1)优化后不需要从脚本中修改组合字符
# 2)优化后代码更加简洁

# 初学者自己编写,明白会有更好的方法及优化。

更多安全分享,请关注【安全info】微信公众号!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/863885.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号