【发布时间】:2014-01-19 00:45:53
【问题描述】:
这是程序。它在 IDLE 上运行良好,但在询问您是否知道密码长度后崩溃。我似乎无法弄清楚想要我失踪。我很乐意提供任何帮助。
import itertools
import string
import sys, os, cmd
from datetime import datetime
FMT = '%Y-%m-%d %H:%M:%S'
passwordstried = 0
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0,]
#symbols = [
lowercaseletters = ["q","w","e","r","t","y","u","i","o","p","a","s","d","f","g","h","j","k","l","g","h","j","k","l","z","x","c","v","b","n","m"]
uppercaseletters = ["Q","W","E","R","T","Y","U","I","O","P","A","S","D","F","G","H","J","K","L","G","H","J","K","L","Z","X","C","V","B","N","M"]
stuff = lowercaseletters + uppercaseletters + numbers
if (input("Do you have the length of the password?") == 'y'):
lengthstartingvalue = int(input("Password length: "))
else:
lengthstartingvalue = 0
starttime = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
print(starttime)
starttime = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
for L in range(lengthstartingvalue, len(stuff)+1):
for subset in itertools.combinations_with_replacement(stuff, L):
print(subset)
passwordstried = passwordstried + 1
if (L>lengthstartingvalue-1):
break
endtime = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
elapsed = datetime.strptime(endtime, FMT) - datetime.strptime(starttime, FMT)
print ('Time elapsed:',elapsed)
print ('Passwords tried:',passwordstried)
【问题讨论】:
-
它是如何崩溃的?你能发布例外吗?
-
就是这样。我什至看不到发生了什么。
-
您能提供更多信息吗?追溯?看起来您正在使用 Python 3.x。问题是窗户消失了吗?如果是这样,只需添加
input()作为最后一条语句,以便窗口保持打开状态,直到您点击 -
@Conner 你能说明一下你使用的是哪个版本的 Python 吗?
-
@Levon 感谢您的慷慨,但您的回答效果很好。 +1 给你。
标签: python windows python-3.x cmd