Cómo crear un generador de contraseñas en Python paso a paso

Si estás aprendiendo Python, uno de los mejores proyectos para empezar es crear un generador de contraseñas.

Es sencillo, útil y te permite practicar variables, funciones, módulos y manejo de cadenas de texto.

Al final tendrás una herramienta capaz de generar contraseñas seguras en segundos 🚀


🎯 Objetivo del proyecto

Nuestro programa podrá:

✅ generar contraseñas aleatorias

✅ definir la longitud

✅ incluir letras

✅ incluir números

✅ incluir símbolos


📦 Paso 1: Importar las librerías necesarias

Python incluye módulos que facilitan la generación de datos aleatorios.

Comienza creando un archivo llamado:


password_generator.py

Luego importa:


import random
import string

🔍 ¿Qué hace cada módulo?

random

Permite seleccionar elementos al azar.

Ejemplo:


import random

print(random.randint(1, 100))

string

Contiene grupos de caracteres listos para usar.

Ejemplo:


import string

print(string.ascii_letters)

Resultado:


abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

⚙️ Paso 2: Crear los caracteres disponibles

Ahora vamos a combinar:

  • letras
  • números
  • símbolos

Agrega:


caracteres = (
    string.ascii_letters +
    string.digits +
    string.punctuation
)

Esto crea una gran lista de caracteres posibles.


🔢 Paso 3: Solicitar la longitud

Ahora preguntaremos cuántos caracteres debe tener la contraseña.


longitud = int(input("Longitud de la contraseña: "))

Por ejemplo:


Longitud de la contraseña: 16

🔐 Paso 4: Generar la contraseña

Utilizaremos un bucle para elegir caracteres aleatorios.


password = ""

for i in range(longitud):
    password += random.choice(caracteres)

Cada vuelta selecciona un carácter al azar.


🖥️ Paso 5: Mostrar el resultado

Añade:


print("\nContraseña generada:")
print(password)

🚀 Código completo


import random
import string

caracteres = (
    string.ascii_letters +
    string.digits +
    string.punctuation
)

longitud = int(input("Longitud de la contraseña: "))

password = ""

for i in range(longitud):
    password += random.choice(caracteres)

print("\nContraseña generada:")
print(password)

▶️ Ejecutar el programa

Desde la terminal:


python password_generator.py

Ejemplo:


Longitud de la contraseña: 16

Contraseña generada:
T#8xP!4n@L2k$7Qr

Cada ejecución generará una contraseña diferente.


🔥 Mejorando el proyecto

Puedes añadir nuevas funciones como:

Copiar automáticamente al portapapeles


pip install pyperclip

Generar varias contraseñas


for i in range(5):
    print(generar_password())

Elegir si incluir símbolos


usar_simbolos = input("¿Incluir símbolos? (s/n): ")

Crear una interfaz gráfica

Con:


tkinter

podrás crear una ventana visual para tu generador.


💡 ¿Qué aprendiste con este proyecto?

Durante este tutorial utilizaste:

✅ variables

✅ bucles

✅ módulos

✅ entrada de datos

✅ cadenas de texto

✅ generación aleatoria

Son conceptos fundamentales para cualquier programador Python.


🐍 Próximo reto

Una vez que tengas funcionando este generador puedes intentar crear:

  • un organizador de archivos
  • un generador de nombres aleatorios
  • un bot para Telegram
  • un gestor de tareas

Cada proyecto te ayudará a mejorar tus habilidades y ganar experiencia práctica.


Hikvoo — Tecnología simple y útil.