Can';你不能用python编写新行吗?
这是我目前用来获取新行的代码。遗憾的是,它只是重写了程序中的第一行。发生了什么事?如果你能帮助我,我将非常感激Can';你不能用python编写新行吗?,python,windows,python-3.x,Python,Windows,Python 3.x,这是我目前用来获取新行的代码。遗憾的是,它只是重写了程序中的第一行。发生了什么事?如果你能帮助我,我将非常感激 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',] sym
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 + symbols
if (input("Do you have the length of the password?") == 'y'):
lengthstartingvalue = int(input("Password length: "))
else:
lengthstartingvalue = 1
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)
password = ''.join(subset)
print(password)
file = open("generatedpasswords.txt","w")
file.write(str(password) + '\n')
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)
file.close()
导入itertools
导入字符串
导入系统、操作系统、命令
从日期时间导入日期时间
FMT=“%Y-%m-%d%H:%m:%S”
passwordstried=0
数字=['1','2','3','4','5','6','7','8','9','0',]
符号=[“!”、“@”、“#”、“$”、“%”、“^”、“&”、“*”、“(“、”、“”、“-”、“、”、“、”、”、“:”、“;”、“+”、“=”、“[”、”、“}、”、“、”、“、”、“?、“/”、“、”、“|、“、”、“\”、“~”、“`]
小写字母s=[“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”]
大写字母=[“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=小写字母+大写字母+数字+符号
如果(输入(“您有密码的长度吗?”)==“y”):
lengthstartingvalue=int(输入(“密码长度:”)
其他:
长度起始值=1
starttime=datetime.now().strftime(“%Y-%m-%d%H:%m:%S”)
打印(开始时间)
starttime=datetime.now().strftime(“%Y-%m-%d%H:%m:%S”)
对于范围内的L(长度起始值,长度(填充)+1):
对于itertools中的子集。使用替换的组合(stuff,L):
#打印(子集)
密码=“”。加入(子集)
打印(密码)
文件=打开(“generatedpasswords.txt”、“w”)
file.write(str(密码)+'\n')
passwordstried=passwordstried+1
如果(L>lengthstartingvalue+1):
打破
endtime=datetime.now().strftime(“%Y-%m-%d%H:%m:%S”)
已用时间=datetime.strtime(endtime,FMT)-datetime.strtime(starttime,FMT)
打印('经过的时间:',经过的时间)
打印('已尝试密码:',带密码)
file.close()文件
在循环中重新打开同一文件时出现问题。。。
这将一次又一次地重新打开同一文件,并最终将最后一个密码写入该文件
如果您想附加当前密码,并且不想丢失以前的数据,那么您可以在for循环中使用
file=open(“generatedpasswords.txt”,“a”)
。您必须更具体,请发布我们可以运行的代码,以查看您遇到的问题。您发布的代码工作正常……添加所有代码时应该存在其他错误。我似乎无法让它工作。我需要等53秒P
file = open("generatedpasswords.txt","w")
for L in range(lengthstartingvalue, len(stuff)+1):
for subset in itertools.combinations_with_replacement(stuff, L):
#print(subset)
password = ''.join(subset)
print(password)
file.write(str(password) + '\n')
passwordstried = passwordstried + 1
if (L>lengthstartingvalue+1):
break