Fundamentos de Python para GenAI

Conoces JavaScript y TypeScript. Quieres construir con LangChain, LangGraph y herramientas de GenAI. Necesitas Python.

No necesitas aprender una nueva forma de pensar. Solo necesitas mapear los conceptos de Python con lo que ya conoces.

Aquí tienes tu guía rápida de traducción.

Sintaxis básica

  • Variables: Sin let ni const. Usa name = "Ajmal". Usa MAYÚSCULAS para las constantes.
  • Booleans: true/false se convierte en True/False.
  • Null/Undefined: Usa None.
  • Strings: Los template literals ${name} se convierten en f-strings f"{name}".
  • Print: console.log() se convierte en print().
  • Indentation: Python utiliza espacios en lugar de llaves {}. Este es el cambio más importante.

Estructuras de datos

  • Lists: Como los Arrays de JS. Usa fruits.append("date") en lugar de fruits.push("date").
  • Dicts: Como los Objetos de JS. Usa person["name"] para acceder a los valores.
  • Slicing: Un superpoder de Python. Usa fruits[1:3] para obtener un rango específico.
  • Sets: Como los Sets de JS. Ideales para eliminar duplicados.
  • Tuples: Como arrays inmutables. No puedes cambiarlos después de su creación.

Patrones funcionales

  • Map: En lugar de .map(), usa list comprehensions: [n * 2 for n in numbers].
  • Filter: En lugar de .filter(), usa: [n for n in numbers if n > 5].
  • Spread: Usa *args para argumentos posicionales y **kwargs para argumentos con nombre.

Clases y validación

  • Classes: Usa self en lugar de this.
  • Pydantic: Esto es vital para GenAI. Se encarga de la validación de datos. LangChain lo utiliza para todo, desde esquemas de herramientas hasta salidas de LLM.
  • Decorators: Son como los Higher Order Components en React. Envuelven funciones para añadir comportamiento.

Async y E/S de archivos

  • Async: Python utiliza async/await igual que JS. Usa asyncio.gather() en lugar de Promise.all().
  • Context Managers: Usa la sentencia with para abrir archivos. Gestiona la limpieza automáticamente para que no olvides cerrar los archivos.
  • Exceptions: try/catch se convierte en try/except. throw se convierte en raise.

Gestión del entorno

  • Package Manager: npm se convierte en pip.
  • Dependency File: package.json se convierte en requirements.txt.
  • Local Modules: node_modules/ se convierte en .venv/. Activa siempre tu entorno virtual antes de instalar paquetes.

Domina estos mapeos y podrás empezar a construir agentes de IA de inmediato.

Fuente: https://dev.to/ajmal_hasan/python-essentials-for-genai-lji