Esencial⏱ 25 minVS Code / Cursor (input)

Entrada de datos segura

Solicitar información obligatoria.

builtins

🎯 Qué vas a lograr en esta lección

¿Qué problema vas a resolver?

Aprenderás a solicitar información obligatoria. La idea es partir de una necesidad concreta, no de memorizar código.

¿Qué vas a construir?

Terminal Profile Form: un proyecto pequeño para resolver una tarea pequeña con datos simples. El nombre técnico identifica la carpeta del proyecto; no necesitás memorizarlo.

¿Por qué es útil?

Te ayuda a entender cómo Python guarda información, toma decisiones y muestra resultados.

¿Qué vas a aprender?

Practicarás variables, tipos de datos, instrucciones y resultados visibles. Cada término nuevo se explica antes de usarlo.

Tu primera acción

No instalés ni ejecutes nada todavía. Primero lee las palabras esenciales y observa el ejemplo pequeño. Después identificarás qué dato entra, qué instrucción trabaja y qué resultado aparece.

Avanza una parte a la vez

1
Aprende

Leé las palabras nuevas y el ejemplo pequeño.

2
Practica

Cambiá una sola cosa y ejecuta nuevamente.

3
Comprueba

Respondé las preguntas y usa las pistas cuando las necesites.

4
Cierra

Marcá el checklist y decide si continuar o tomar una pausa.

No necesitás entender toda la página de una vez. Termina una parte, haz una pausa breve y continúa cuando estés listo.
Parte 1

Aprende las palabras esenciales

Leé definiciones cortas y explica cada palabra con un ejemplo propio.

🧱 Conceptos esenciales explicados desde cero

Esta sección no es opcional. Presenta las palabras y procesos que necesitás para comprender el ejemplo. Leé una definición, observa el ejemplo y explícalo con una frase propia antes de avanzar.

entrada

Qué significa: Dato que una persona, archivo, API o sistema entrega al programa.

Para qué sirve: Es el punto de partida del proceso.

Ejemplo: El texto escrito con input() o un archivo CSV.

Confusión frecuente: La entrada debe validarse; no se debe asumir que siempre es correcta.

conversion

Qué significa: Proceso de cambiar un valor de un tipo de dato a otro.

Para qué sirve: Permite operar correctamente con datos recibidos como texto.

Ejemplo: edad = int(input("Edad: ")).

Confusión frecuente: La conversión falla si el texto no representa el tipo solicitado.

validacion

Qué significa: Comprobación de que un dato cumple reglas antes de usarlo.

Para qué sirve: Evita resultados incorrectos y errores inesperados.

Ejemplo: Revisar que una edad sea un entero positivo.

Confusión frecuente: Validar no es lo mismo que corregir automáticamente.

excepcion

Qué significa: Evento que interrumpe el flujo normal cuando ocurre un error.

Para qué sirve: Permite detectar y manejar fallos esperados.

Ejemplo: try/except alrededor de int(texto).

Confusión frecuente: Capturar Exception sin analizar puede ocultar problemas reales.

str

Qué significa: Tipo de dato para texto, escrito normalmente entre comillas.

Para qué sirve: Sirve para nombres, mensajes, rutas y cualquier contenido textual.

Ejemplo: nombre = "Andrea".

Confusión frecuente: No podés sumar directamente "10" + 5 sin convertir el texto.

Ejemplo mínimo de datos

Este ejemplo es deliberadamente pequeño. Su objetivo es mostrar las piezas básicas sin mezclar todavía toda la lógica del proyecto.

nombre = "Andrea"      # str
edad = 30             # int
precio = 19.95        # float
esta_listo = True     # bool
tareas = ["Estudiar"] # list

print(nombre, edad, precio, esta_listo, tareas)
  1. Identificá los nombres nuevos: subraya variables, funciones, tipos, herramientas o pasos.
  2. Señala la entrada: qué dato recibe o qué valor ya está escrito.
  3. Señala el proceso: qué instrucción transforma, valida, consulta o calcula.
  4. Señala la salida: qué resultado puede verse o verificarse.
  5. Explícalo: completa “el programa recibe ___, hace ___ y entrega ___”.
No continués todavía si no podés explicar al menos tres términos y el flujo entrada → proceso → salida sin copiar el texto.

🧠 Conceptos explicados desde cero

No memoricés los nombres. Leé qué significa cada término, observa el ejemplo y trata de explicarlo con tus propias palabras.

input

Qué significa: Función que pausa el programa y espera texto escrito por la persona.

Para qué sirve: Recibir datos desde la terminal.

Ejemplo pequeño: nombre = input("Tu nombre: ")

Confusión frecuente: Siempre devuelve texto; hay que convertirlo si se necesita un número.

while

Qué significa: Bucle que se repite mientras una condición sea verdadera.

Para qué sirve: Reintentar una entrada o mantener un proceso activo.

Ejemplo pequeño: while intentos < 3:

Confusión frecuente: Puede volverse infinito si la condición nunca cambia.

strip

Qué significa: Método de texto que elimina espacios y saltos de línea sobrantes al inicio y al final.

Para qué sirve: Limpiar datos escritos por una persona antes de guardarlos o compararlos.

Ejemplo pequeño: " Andrea ".strip() produce "Andrea".

Confusión frecuente: No elimina los espacios que están entre palabras.

validación

Qué significa: validación es un término técnico utilizado en esta lección.

Para qué sirve: Nombrar una parte específica del proceso de validación.

Ejemplo pequeño: Busca validación en el ejemplo y observa qué recibe y qué produce.

Confusión frecuente: No intentés memorizar el nombre: explicá primero su función con tus propias palabras.

Parte 2

Mirá un ejemplo pequeño

Primero comprende un ejemplo mínimo. Después observa el código completo.

Guardar y mostrar un dato

Observá únicamente tres cosas: qué dato existe, qué instrucción se ejecuta y qué resultado aparece.

name = "Andrea"
print(name)
Resultado explicado: Python guarda el texto en name y luego muestra Andrea.

Antes de continuar, responde con tus palabras:

  1. ¿Qué dato recibe o ya tiene el ejemplo?
  2. ¿Qué instrucción realiza el trabajo?
  3. ¿Qué resultado podés observar?

⌨️ Código completo

def ask_required(label: str) -> str:
    while True:
        value = input(f"{label}: ").strip()
        if value:
            return value
        print("Este campo es obligatorio.")

name = ask_required("Nombre")
goal = ask_required("Meta")
print(f"{name}: {goal}")

🖼️ Explicación ilustrada: entrada → proceso → resultado

Piensa en una máquina sencilla: colocas algo en la entrada, la máquina aplica un proceso y entrega un resultado.

Situación

Una persona necesita resolver el problema de «entrada de datos segura».

Entrada

El programa recibe datos, instrucciones o archivos relacionados con microproyecto.

Proceso

El código valida la entrada, aplica reglas mediante funciones y prepara una respuesta.

Resultado

El usuario recibe un resultado visible que puede comprobar y comparar.

Ejemplo antes y después

Antes

Antes de ejecutar: solo tenemos datos y una necesidad.

Después

Después de ejecutar: tenemos un resultado producido por pasos identificables.

¿Cómo usarás este ejemplo en el mini proyecto?

Ahora practicarás con un mini proyecto. Primero observarás el ejemplo, después cambiarás una sola parte y finalmente explicarás el resultado.

1. ObservarVer el ejemplo
2. EntenderRelacionar datos y resultado
3. CambiarModificar una sola cosa
4. EjecutarComprobar el resultado
5. ExplicarDecir qué aprendiste

Regla: cambia una sola parte, ejecuta de nuevo y explica qué diferencia observaste. No necesitás reconstruir el proyecto completo.

Parte 3

Practica con un mini proyecto

Hacé un cambio pequeño, ejecuta el código y observa qué cambió.

🧩 Mini proyecto guiado: Entrada de datos segura

Completá estos ejercicios pequeños antes del desafío. Podés equivocarte: el sistema te explicará qué repasar y te dará una pista.

Paso 1

Reconoce una palabra nueva

En esta lección aparece input. ¿Cuál es la mejor forma de aprenderlo?

Paso 2

Hacé un cambio seguro

Querés practicar con el código de Entrada de datos segura. ¿Qué cambio es mejor para comenzar?

Paso 3

Comprobá lo que ocurrió

Después de modificar un dato, ¿qué tenés que hacer para saber si aprendiste correctamente?

Paso 4

Tu mini proyecto

Tarea: abre el editor del navegador o el archivo completo. Cambiá un solo dato visible, ejecútalo y observa qué parte del resultado cambió.

Progreso del mini proyecto

Completá los cuatro pasos.

🧪 Error controlado

Introduce letras donde esperas un entero y captura `ValueError`.

🤖 Cursor

Explica este proyecto como tutor.
Describe entrada, procesamiento y salida.
Revisa una función por vez.
No cambies el código sin mi autorización.
Después hazme cinco preguntas.

🖥️ Cómo abrir y ejecutar este proyecto, paso a paso

¿Qué significa “ejecutar”?

Ejecutar un proyecto significa pedirle a Python que lea las instrucciones guardadas en sus archivos y realice el trabajo. No modifica tu computadora completa: trabaja dentro de la carpeta del proyecto.

En estas instrucciones utilizarás la terminal, una ventana donde escribís comandos. Un comando es una instrucción corta para la computadora.

Antes de comenzar, confirma estas cuatro cosas

  1. Descargaste y descomprimiste el proyecto. Un ZIP es una carpeta comprimida. Tenés que abrirlo para obtener una carpeta normal.
  2. Abriste la carpeta del proyecto. Dentro deberían aparecer archivos como main.py, requirements.txt y README.md.
  3. Python está instalado. Esto se prepara en el Nivel 00.
  4. La terminal está ubicada en esa carpeta. Si la terminal está en otra carpeta, Python no encontrará main.py.

Escoge únicamente tu sistema operativo

No ejecutés las dos rutas. Usá macOS si trabajás en una Mac o Windows si utilizás PowerShell.

macOS · Terminal zsh

  1. Abrí Terminal dentro de la carpeta del proyecto.

    Una forma sencilla es abrir la carpeta en Finder, escribir cd en Terminal, arrastrar la carpeta a la ventana y presionar Enter.

    pwd
    ls

    Resultado esperado: pwd muestra la ruta de la carpeta y ls muestra main.py.

  2. Creá el entorno virtual.
    python3 -m venv .venv

    python3 abre Python. -m venv pide crear un entorno virtual. .venv es el nombre de la nueva carpeta.

    Resultado esperado: aparece una carpeta llamada .venv. El comando puede terminar sin mostrar texto.

  3. Activá el entorno.
    source .venv/bin/activate

    Activar significa indicar que los siguientes comandos deben utilizar el Python privado del proyecto.

    Resultado esperado: la terminal suele mostrar (.venv) al inicio de la línea.

  4. Instalá las librerías del proyecto.
    python -m pip install -r requirements.txt

    python -m pip abre el instalador de librerías. -r requirements.txt le indica qué lista debe leer.

    Resultado esperado: aparecen mensajes de instalación o se indica que las librerías ya están instaladas.

  5. Ejecutá el archivo principal.
    python main.py

    Python abre main.py, lee sus instrucciones de arriba hacia abajo y muestra el resultado.

    Resultado esperado: verás el resultado descrito en la sección “Resultado” de esta lección.

Windows · PowerShell

  1. Abrí PowerShell dentro de la carpeta del proyecto.

    En el Explorador de archivos, abrí la carpeta, hacé clic en la barra de dirección, escribí powershell y presioná Enter.

    Get-Location
    dir

    Resultado esperado: Get-Location muestra la carpeta actual y dir muestra main.py.

  2. Creá el entorno virtual.
    python -m venv .venv

    python abre Python. -m venv crea el entorno y .venv es el nombre de la carpeta.

    Resultado esperado: aparece una carpeta llamada .venv.

  3. Activá el entorno.
    .venv\Scripts\Activate.ps1

    PowerShell empieza a utilizar el Python privado de este proyecto.

    Resultado esperado: aparece (.venv) al inicio de la línea. Si PowerShell bloquea el archivo, repasa la lección de entornos virtuales antes de cambiar políticas de seguridad.

  4. Instalá las librerías.
    python -m pip install -r requirements.txt

    pip lee la lista y prepara las herramientas que utiliza el proyecto.

    Resultado esperado: aparecen mensajes de instalación o confirmación.

  5. Ejecutá el archivo principal.
    python main.py

    Python abre y ejecuta las instrucciones de main.py.

    Resultado esperado: verás el resultado descrito en esta lección.

¿Cómo sé que estoy en la carpeta correcta?

Tenés que poder ver main.py al ejecutar ls en macOS o dir en Windows.

¿Cómo detengo un programa?

Los scripts pequeños terminan solos. Si un servidor continúa funcionando, presiona Control + C.

¿Qué hago si dice que falta un archivo?

Revisá la carpeta actual. El error suele indicar que la terminal no está ubicada donde guardaste el proyecto.

¿Debo repetir todo cada vez?

El entorno se crea e instala una vez. En una sesión nueva normalmente solo activas .venv y ejecutás python main.py.

Términos que aparecerán más adelante

FastAPI

Librería de Python para crear APIs y servidores web. Sus proyectos se ejecutan con un comando diferente a python main.py.

Lo vas a aprender en: Nivel 06 · Crea tu primera API.

Notebook

Documento interactivo que combina pequeños bloques de código, resultados y explicaciones. Es común en análisis de datos.

En este curso: es un recurso opcional. No necesitás usar notebooks para completar las lecciones actuales. Consulta la introducción a notebooks cuando aparezca el término.

Herramienta externa

Programa o servicio que no forma parte de Python, por ejemplo una base de datos, navegador, servicio de nube o modelo de IA.

Regla: no la instales ni ejecutes hasta llegar a la lección que la explica y revisar su README.

🧩 Tres niveles de desafío

  1. Esencial: cambia un dato y verifica el resultado.
  2. Práctica: agrega validación y un mensaje de error claro.
  3. Avanzado: separa responsabilidades, añade pruebas y documenta la arquitectura.

🧪 Comprobaciones programando

Ejecutá un caso controlado y deja que el código compruebe condiciones importantes.

1. Caso normalUsá datos comunes.
2. Valor límiteProbá cero, vacío, máximo o mínimo.
3. Error esperadoComprobá que el mensaje ayude a corregirlo.
result = "resultado esperado"

assert result != "", "El resultado no debe estar vacío"
assert isinstance(result, str), "Debe ser texto"

print("✅ Comprobación superada:", result)
Qué estás aprendiendo: assert detiene el programa cuando una condición es falsa y muestra un mensaje que explica el fallo.

Después de ejecutarlo

  • ¿Qué condición comprueba cada assert?
  • ¿Qué cambio hace fallar la comprobación?
  • ¿El mensaje explica qué tenés que corregir?
  • ¿Podés agregar otro caso?
Parte 4

Comprobá lo que entendiste

Respondé una pregunta a la vez. Podés usar pistas y volver a intentarlo.

❓ Comprueba lo que entendiste

Respondé sobre Entrada de datos segura. Verás una explicación completa y podrás intentarlo nuevamente.

Pregunta 1 de 5 · Selección

¿Cuál describe mejor la entrada principal?

Pregunta 2 de 5 · Selección

¿Qué describe mejor el procesamiento?

Pregunta 3 de 5 · Selección

¿Qué error esperado debería manejarse?

Pregunta 4 de 5 · Respuesta breve

Pregunta 5 de 5 · Respuesta breve

Resultado de la evaluación

Completá las cinco preguntas.

Parte 5

Cerrá la lección

Resume lo aprendido, completa el checklist y decide tu siguiente paso.

📝 Resumen

  1. Ejecutaste una referencia funcional.
  2. Identificaste entrada, procesamiento y salida.
  3. Modificaste un comportamiento.
  4. Provocaste y reparaste un error.
  5. Preparaste una mejora para GitHub.

✅ Checklist

🚀 Mejoras futuras y dónde las aprenderás

No son obligatorias ahora. Son mejoras que aplicarás cuando aprendas las herramientas correspondientes.

Separar la configuración del código

Qué mejora: Evita editar el programa cuando cambia una ruta, clave o preferencia.

Dónde lo aprenderás: en la lección «Protege tokens con .env», del nivel APIs y servicios externos.

Añadir pruebas automatizadas

Qué mejora: Comprueba que una modificación no rompa lo existente.

Dónde lo aprenderás: en la lección «Escribe pruebas unitarias», del nivel Testing y despliegue.

Registrar la ejecución

Qué mejora: Ayuda a entender fallos sin imprimir datos sensibles.

Dónde lo aprenderás: en la lección «Configura observabilidad», del nivel Testing y despliegue.

Mejorar mensajes y validación

Qué mejora: Explica qué dato falta y cómo corregirlo.

Dónde lo aprenderás: en la lección «Entrada de datos segura», del nivel Fundamentos de Python.

Documentar decisiones y limitaciones

Qué mejora: Permite que otra persona comprenda y evalúe el proyecto.

Dónde lo aprenderás: en la lección «Construye casos de estudio», del nivel Portafolio profesional.

Crear una demostración

Qué mejora: Muestra el problema, funcionamiento y evidencia.

Dónde lo aprenderás: en la lección «Crea un índice HTML», del nivel Portafolio profesional.