Untitled
unknown
plain_text
4 years ago
1.6 kB
4
Indexable
#%%
"""
Ejercicio 151: Contraseña aleatoria de dos palabras
Aunque generar una contraseña seleccionando caracteres aleatorios generalmente da una
contraseña relativamente segura, también suele dar una contraseña difícil de memorizar.
Como alternativa, algunos sistemas construyen una contraseña tomando dos palabras en inglés
y concatenándolas. Aunque esta contraseña no es tan segura, es mucho más fácil de memorizar.
Escriba un programa que lea un archivo que contenga una lista de palabras, seleccione al
azar dos de ellas, y las concatene para producir una nueva contraseña. Al producir la
contraseña asegúrese de que la longitud total esté entre 8 y 10 caracteres, y que cada
palabra utilizada tenga al menos tres letras. Escriba en mayúsculas cada palabra de la
contraseña para que el usuario pueda ver fácilmente dónde termina una palabra y empieza la
siguiente. Muestre la contraseña para el usuario.
"""
from random import randrange
ARCHIVO_PALABRAS = "../Datos/palabras.txt"
PALABRAS = []
inf = open(ARCHIVO_PALABRAS, "r")
for linea in inf:
linea = linea.rstrip()
if len(linea) >= 3 and len(linea) <= 7:
PALABRAS.append(linea)
inf.close()
primera = PALABRAS[randrange(0, len(PALABRAS))]
primera = primera.capitalize()
contraseña = primera
while len(contraseña) < 8 or len(contraseña) > 10:
segunda = PALABRAS[randrange(0, len (PALABRAS))]
segunda = segunda.capitalize()
contraseña = primera + segunda
print("La contraseña aleatoria es:", contraseña)Editor is loading...