1

我决定编写一个蛮力函数来向人们展示密码是多么脆弱。现在,我可以向他们展示查找密码所经过的列表,但我如何告诉他们花了多长时间?这是代码:

#!/usr/bin/python
导入迭代工具

lower_a = ['a','b','c','d','e','f','g','h','i','j','k','l' ,'m','n','o','p','q','r','s','t','u','v','w','x',' y','z']
upper_a = ['A','B','C','D','E','F','G','H','I','J','K','L' 、'M'、'N'、'O'、'P'、'Q'、'R'、'S'、'T'、'U'、'V'、'W'、'X'、' Y','Z']
num = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

alllet = []
alllet = lower_a + upper_a# + num
pwd = raw_input("什么密码?\t\t")

尝试:
        对于范围内的 r (1, len(pwd)+1):
                对于 itertools.product(alllet, repeat=r) 中的 s:
                        打印''.join(s)
                        如果''.join(s) == pwd:
                                引发名称错误()

除了键盘中断:
        打印“嘿!你阻止了我!”

除了名称错误:
        打印“完成!破解!”
        print "\n\n密码是:\t" + ''.join(s) + "\n\n"


4

3 回答 3

4

首先,密码非常安全,使用暴力攻击需要很多天才能找到密码。

但是,如果您愿意,可以使用以下内容:

import time

start_time = time.time()

# Your code here

stop_time = time.time()
print "Running time in sec:", stop_time - start_time
于 2011-01-18T04:05:32.763 回答
1

你需要的是timeit模块。使用timeit.Timer,您可以测量代码的速度。

是一个很好的在线教程。

希望这可以帮助

于 2011-01-18T04:48:50.213 回答
0

多长时间?

from time import time最重要的是,在程序开始时执行start = time(). 在名称错误部分做print time() - start

请更具体一点

于 2011-01-18T04:04:45.327 回答