Generador de Contraseñas Aleatorias (Python)

Enlace Patrocinado
Respondent.io es una plataforma en línea que conecta investigadores y empresas con participantes para estudios de mercado y encuestas remuneradas. Su objetivo es facilitar la recopilación de datos cualitativos y cuantitativos mediante entrevistas, encuestas y pruebas de usuario
Respondent.io
Respondent.io es una plataforma en línea que conecta investigadores y empresas con participantes para estudios de mercado y encuestas remuneradas. Su objetivo es facilitar la recopilación de datos cualitativos y cuantitativos mediante entrevistas, encuestas y pruebas de usuarioEmpezamos con el primer proyecto de la guia 50 Proyectos de Programacion para Practicar y Aprender. Proyectos para Principiantes
Enunciado de proyecto:
Crea un programa que genere contraseñas seguras con una longitud especificada por el usuario.
Código Python:
import random
import string
def generar_contrasena(longitud):
"""Genera una contraseña aleatoria segura."""
caracteres = string.ascii_letters + string.digits +
string.punctuation
contrasena = ''.join(random.choice(caracteres)
for i in range(longitud))
return contrasena
if __name__ == "__main__":
try:
longitud_contrasena = int(
input("Introduce la longitud de la contraseña deseada: "))
if longitud_contrasena <= 0:
print("La longitud de la contraseña debe
ser mayor que 0.")
else:
contrasena_generada =
generar_contrasena(longitud_contrasena)
print("Contraseña generada:",
contrasena_generada)
except ValueError:
print("Por favor, introduce un número
entero válido para la longitud.")
Explicación del código:
- Importación de módulos:
random: Para generar números aleatorios.string: Para acceder a conjuntos de caracteres como letras, dígitos y puntuación.
- Función
generar_contrasena(longitud):- Define un conjunto de caracteres posibles (letras, dígitos, puntuación).
- Utiliza
random.choice()para seleccionar aleatoriamente un carácter del conjunto por la cantidad de veces especificada por la longitud deseada. - Une los caracteres seleccionados en una cadena usando
''.join(). - Retorna la contraseña generada.
- Bloque principal
if __name__ == "__main__"::- Solicita al usuario que introduzca la longitud de la contraseña deseada.
- Intenta convertir la entrada del usuario a un entero. Si falla (por ejemplo, si el usuario introduce texto), captura la excepción
ValueErrore informa al usuario. - Verifica que la longitud introducida sea mayor que 0.
- Si la entrada es válida, llama a la función
generar_contrasena()para generar la contraseña. - Imprime la contraseña generada.
Indice de la guia de proyectos