Ayuda con generador de contraseñas en python

Iniciado por sulcud, 4 Febrero 2017, 22:46 PM

0 Miembros y 1 Visitante están viendo este tema.

sulcud

Estaba haciendo un script para generar una lista con 365 contraseñas pero resulta que solo tengo el codigo para generar una sola:

Código (python) [Seleccionar]
import string
from random import *
letters=string.ascii_letters
digits=string.digits
symbols=string.punctuation
contrasena= letters + digits +symbols

min_length=50
max_length=50
password="".join(choice(contrasena)for x in range(randint(min_length,max_length)))

mi pregunta es:
como consigo hacer que me genera una lista de 365 contraseñas diferentes?
cada vez que lo intento solo consigo que lo haga utilizando la contraseña ya creada repitiendola

habra alguna forma de que el codigo que ya escribi vuelva a ejecutarse?

por favor si tienen solucion al problema me gustaria que me mostraran el codigo que debo ponerle y su explicacion gracias ;D



· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex

tincopasan

podrías usar un bucle while, algo así por ejemplo:
Código (python) [Seleccionar]

contador = 0
while contador < 365:
    password="".join(choice(contrasena)for x in range(randint(min_length,max_length)))
    contador+=1
    print(password)

JS3

#2
Código (python) [Seleccionar]

import string
from random import *

letters=string.ascii_letters
digits=string.digits
symbols=string.punctuation
contrasena= letters + digits +symbols

min_length=50
max_length=50

listaPsw = ["".join(choice(contrasena)for x in range(randint(min_length,max_length))) for i in range(365)]

sulcud

Cita de: tincopasan en  5 Febrero 2017, 00:41 AM
podrías usar un bucle while, algo así por ejemplo:
Código (python) [Seleccionar]

contador = 0
while contador < 365:
    password="".join(choice(contrasena)for x in range(randint(min_length,max_length)))
    contador+=1
    print(password)

gracias me sirvió mucho. La parte de los bucles es lo que mas se me complica

<Trocutor>

import httplib, urllib
import itertools

# Minusculas abcdefghijklmnopqrstuvwxyz
# Mayusculas ABCDEFGHIJKLMNOPQRSTUVWXYZ
# Numeros 1234567890
# Especiales !"#$%&/()=?¡*[_:,;.-'¿

longitud = 6
arreglo = list('Jito')
combinaciones = itertools.product(arreglo, repeat=longitud)