高中信息技术Python教程第38课破解超级密码

高中信息技术Python教程第38课破解超级密码
2021年02月23日 20:46 戏言电影新势力

在上节课我们学习了制作密码破解软件,破解的内容是数字密码。这节课我们将要学习制作破解超级密码的软件。

所谓超级密码就是由大小写字母、数字、特殊符号组成的密码。

首先看一下程序的结构。总体分成三部分,第一部分是导入tkinter建立窗口;第二部分是自定义一个破解按钮的激发函数;第三部分是建立框架,在框架中定义两个Label(标签)和两个Entry(文本框)。

第一部分:导入tkinter,建立窗口,设置窗口标题和大小。

第二部分:按钮的激发函数jiemi()。

在编程过程中一定要注意格式!!!

d1=datetime.datetime.now()通过datetime函数得到当前的时间赋值给d1。

p=varin.get()通过Entry(文本框)获得超级密码用.get()函数得到值后赋值给变量p。

s=[0]*4 新建一个列表,列表里的成员为[0,0,0,0]。

for a in range(33,127):

s[0]=chr(a)

变量a遍历33到126,给s[0]赋值chr(a),chr(33)的值是"!",s[0]是在列表的第一位置上赋值。

chr(33)到chr(126)是大小写字母、数字和特殊符号。

if ''.join(s)==p: 中的.join()函数将序列中的元素以指定的字符连接生成一个新的字符串。可以参考下图。

对比字符串破解超级密码,大家可以看到,总体结构是一样的,都是分成三个部分,

第二部分中,使用的通过穷举字符串来破解超级密码。

测试解决同一个超级密码所用的时间,大家可以看出,使用列表的时间少。

作业:完成其中一种破解超级密码的程序。

财经自媒体联盟

新浪首页 语音播报 相关新闻 返回顶部