Código
import itertools # Definimos el alfabeto incluyendo la ñ alfabeto = "abcdefghijklmnñopqrstuvwxyz" # Generamos todas las combinaciones de 4 letras combinaciones = itertools.product(alfabeto, repeat=4) # Convertimos las combinaciones en una lista de strings resultado = [''.join(combinacion) for combinacion in combinaciones] # Mostramos las primeras 10 combinaciones como ejemplo print(resultado[:10]) # Si necesitas guardarlas en un archivo with open("combinaciones.txt", "w", encoding="utf-8") as archivo: for combinacion in resultado: archivo.write(combinacion + "\n")
Quisiera que me expliquen algunas cosas...
Código
La variable resultado es... ''.juntar(¿?) para ¿? en combinaciones.
resultado = [''.join(combinacion) for combinacion in combinaciones]
¿Qué es combinacion y qué hace todo eso exactamente? Nunca les vi sentido a los for xP
Código
Con abrir archivo combinaciones.txt, ¿w?, parámetro que no necesito, como archivo
with open("combinaciones.txt", "w", encoding="utf-8") as archivo:
Me habían dado otra forma de guardar:
Código
Por eso dije que lo de encoding no lo necesito, lo que no entiendo es la w y que uno dice archivo y el otro txt ¿eso último es un nombre de resúmen que se le pone al archivo para referirse a él dentro del programa?
with open("passwords_python.txt", "w") as txt:
Y eso de "con abrir (nombre)" tampoco parece tener sentido. Lo normal es cosas como "with a hammer, drive a nail", o sea, "con objeto, hacer algo". Si se dice "con verbo, hacer algo", también podría entenderlo, pero aquí la acción parece el verbo, no sé, no es algo como "Crear archivo (nombre)", eso sí tendría sentido.
Código
Para ¿? en resultado
for combinacion in resultado: archivo.write(combinacion + "\n")
al archivo agregarle (¿? + salto de línea)
No sé qué es combinacion, tal vez algo que itertools crea por defecto, o sea, esa variable no se definió.