Mi pequeño aporte, genera contraseñas a través del código ASCII.
Código: python
def password():
"""
49 AL 57 NUMS
65 AL 90 MAJU
97 AL 122 MIN
"""
Input = 1
while Input > 0:
Valor = 0
num = 0
passwd = []
nume = 0
mayu = 0
minu = 0
while num < 8: #Generamos contraseña de 8 carácteres.
Valor = irand = randrange(123)
if (Valor > 48 and Valor < 58) or (Valor > 64 and Valor < 91) or (Valor > 96 and Valor <123):
num+=1
passwd.append(Valor)
#Comprobamos que cumple una normativa miníma de 1 letra en mayúscula, 1 en minúscula y 1 número.
if (Valor > 49 and Valor < 57):
nume+=1
if (Valor > 65 and Valor < 90):
mayu+=1
if (Valor > 97 and Valor < 122):
minu+=1
if (nume==1 and mayu==1 and minu==1 and num >= 8):
Input-=1
return passwd