Ejecución de código Python: intérprete interactivo y scripts
Introducción
Una de las grandes ventajas de Python es la flexibilidad que ofrece para ejecutar código. Ya sea que necesites probar rápidamente una idea, experimentar con nuevos conceptos o desarrollar aplicaciones completas, Python te proporciona diferentes métodos para ejecutar tu código. En este artículo, exploraremos las dos formas principales de ejecución de código Python: el modo interactivo a través del intérprete y la ejecución de scripts. Comprenderás las ventajas y casos de uso de cada método, lo que te permitirá elegir el enfoque más adecuado según tus necesidades mientras aprendes este lenguaje.
El intérprete interactivo de Python
El intérprete interactivo, también conocido como REPL (Read-Eval-Print Loop, o Bucle de Lectura-Evaluación-Impresión), es una herramienta poderosa que permite escribir y ejecutar código Python línea por línea, obteniendo resultados inmediatos.
Cómo acceder al intérprete interactivo
Hay varias formas de acceder al intérprete interactivo de Python:
-
Desde la línea de comandos:
- Abre una terminal o símbolo del sistema
- Escribe
python
(Windows) opython3
(macOS/Linux) y presiona Enter - Verás algo similar a esto:
Python 3.12.0 (tags/v3.12.0:0fb18b0, Oct 2 2023, 13:18:20) [MSC v.1937 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>>
El símbolo
>>>
indica que el intérprete está esperando tus comandos. -
Desde IDLE:
- Al abrir IDLE, se inicia automáticamente el intérprete interactivo
- Verás una ventana llamada "Python Shell" con el símbolo
>>>
-
Desde editores avanzados:
- En VS Code: Ve a Ver > Terminal y escribe
python
opython3
- En PyCharm: Ve a Tools > Python Console
- En VS Code: Ve a Ver > Terminal y escribe
Uso básico del intérprete interactivo
El intérprete ejecuta cada línea de código inmediatamente después de presionar Enter:
>>> 2 + 3
5
>>> nombre = "Laura"
>>> print("Hola, " + nombre)
Hola, Laura
Cada resultado se muestra debajo de la instrucción ejecutada.
Ventajas del intérprete interactivo
El intérprete interactivo resulta ideal para:
- Aprendizaje: Es perfecto para experimentar con nuevas funciones o conceptos
- Pruebas rápidas: Permite verificar rápidamente cómo funciona una expresión
- Depuración: Ayuda a identificar errores ejecutando código paso a paso
- Cálculos simples: Funciona como una calculadora avanzada
Operaciones básicas en el intérprete
Puedes realizar todo tipo de operaciones en el intérprete:
>>> # Operaciones matemáticas
>>> 10 / 3
3.3333333333333335
>>> 10 // 3 # División entera
3
>>> 10 % 3 # Módulo (resto)
1
>>> 2 ** 8 # Potencia
256
>>> # Operaciones con cadenas
>>> "Python" * 3
'PythonPythonPython'
>>> "Programación".upper()
'PROGRAMACIÓN'
>>> # Variables y asignaciones
>>> contador = 0
>>> contador += 1
>>> contador
1
Funciones de ayuda en el intérprete
El intérprete incluye funciones útiles para obtener información:
-
help(): Proporciona documentación sobre objetos, funciones o módulos
>>> help(print) # Muestra información sobre la función print >>> help() # Modo de ayuda interactiva
-
dir(): Muestra los atributos y métodos disponibles
>>> dir("texto") # Muestra todos los métodos de las cadenas
-
type(): Revela el tipo de un objeto
>>> type(5) <class 'int'> >>> type("Hola") <class 'str'>
Salir del intérprete
Para salir del intérprete interactivo:
- Escribe
exit()
oquit()
y presiona Enter - O utiliza la combinación de teclas Ctrl+Z seguido de Enter (Windows) o Ctrl+D (macOS/Linux)
Ejecución de scripts de Python
Un script de Python es un archivo de texto con extensión .py
que contiene código Python. A diferencia del intérprete interactivo, los scripts permiten guardar y reutilizar programas completos.
Creación de un script de Python
Para crear un script:
- Abre un editor de texto o IDE
- Escribe tu código Python
- Guarda el archivo con extensión .py
Ejemplo de un script sencillo (mi_script.py
):
# Este es un script sencillo de Python
# Definimos una función
def saludar(nombre):
return f"¡Hola, {nombre}! Bienvenido/a a Python."
# Pedimos el nombre al usuario
nombre_usuario = input("Por favor, introduce tu nombre: ")
# Llamamos a la función y mostramos el resultado
mensaje = saludar(nombre_usuario)
print(mensaje)
# Hacemos un pequeño cálculo
edad = input("¿Cuántos años tienes? ")
edad = int(edad) # Convertimos la entrada a número
años_en_2030 = 2030 - 2025 + edad
print(f"En el año 2030 tendrás {años_en_2030} años.")
Ejecución de scripts
Hay varias formas de ejecutar un script:
-
Desde la línea de comandos:
- Abre una terminal o símbolo del sistema
- Navega hasta la carpeta donde guardaste el script
- Ejecuta:
python mi_script.py # Windowspython3 mi_script.py # macOS/Linux
-
Desde IDLE:
- Abre el script en IDLE
- Presiona F5 o ve a Run > Run Module
-
Desde editores como VS Code o PyCharm:
- Abre el archivo en el editor
- Usa el botón de ejecución (normalmente un triángulo verde o botón "Play")
-
Haciendo el script ejecutable (solo en Linux/macOS):
- Añade una línea shebang al inicio del script:
#!/usr/bin/env python3
- Da permisos de ejecución:
chmod +x mi_script.py
- Ejecuta directamente:
./mi_script.py
- Añade una línea shebang al inicio del script:
Argumentos de línea de comandos
Los scripts pueden recibir parámetros desde la línea de comandos, lo que aumenta su flexibilidad:
# argumentos.py
import sys
# sys.argv es una lista que contiene los argumentos pasados al script
# sys.argv[0] es el nombre del script
# sys.argv[1], sys.argv[2], etc. son los argumentos adicionales
if len(sys.argv) > 1:
print(f"¡Hola, {sys.argv[1]}!")
else:
print("Por favor, proporciona tu nombre como argumento.")
# Si hay más argumentos, los mostramos todos
if len(sys.argv) > 2:
print("Argumentos adicionales:")
for i in range(2, len(sys.argv)):
print(f" {i}. {sys.argv[i]}")
Para ejecutar este script con argumentos:
python argumentos.py Carlos María José
Salida:
¡Hola, Carlos!
Argumentos adicionales:
2. María
3. José
Importación de módulos en scripts
Los scripts pueden importar funcionalidades de otros módulos o paquetes:
# calculadora.py
import math
import random
# Uso de funciones del módulo math
numero = 16
raiz_cuadrada = math.sqrt(numero)
print(f"La raíz cuadrada de {numero} es {raiz_cuadrada}")
# Uso de funciones del módulo random
numero_aleatorio = random.randint(1, 100)
print(f"Número aleatorio entre 1 y 100: {numero_aleatorio}")
# Podemos usar también módulos propios
# (Esto funcionaría si tuviéramos un archivo llamado mis_funciones.py)
# import mis_funciones
# resultado = mis_funciones.suma(5, 3)
Ejecución mediante importación
Python permite que un script sea tanto ejecutable como importable. Para ello, se utiliza la estructura:
# mi_programa.py
def funcion_principal():
print("Ejecutando la función principal")
# Código de la función principal...
# Este bloque solo se ejecuta si el script se ejecuta directamente,
# no cuando se importa como un módulo
if __name__ == "__main__":
funcion_principal()
Esta estructura permite:
- Ejecutar el script directamente:
python mi_programa.py
- Importar sus funciones desde otro script sin ejecutar el código principal:
import mi_programami_programa.funcion_principal() # Llamada explícita a la función
Diferencias entre el intérprete y los scripts
Característica | Intérprete interactivo | Scripts |
---|---|---|
Persistencia | El código no se guarda automáticamente | El código se guarda en archivos |
Ejecución | Línea por línea | Todo el programa de una vez |
Caso de uso ideal | Pruebas rápidas, exploración | Programas completos, reutilizables |
Estado de variables | Disponible durante toda la sesión | Reiniciado en cada ejecución |
Entrada de datos | Principalmente manual | Puede automatizarse |
Depuración | Inmediata, línea a línea | Requiere herramientas específicas |
Consejos prácticos
-
Combina ambos enfoques:
- Usa el intérprete para probar conceptos
- Cuando tengas algo funcional, pásalo a un script
-
Durante el aprendizaje:
- Mantén abierta una sesión del intérprete para probar ejemplos
- Guarda tus avances en scripts organizados por temas
-
Para scripts más complejos:
- Divide tu código en funciones
- Usa comentarios para documentar el funcionamiento
- Implementa manejo de errores con try/except
-
Depuración eficiente:
- En scripts, añade
print()
estratégicos para ver valores intermedios - En el intérprete, examina variables después de cada paso
- En scripts, añade
Resumen
En este artículo hemos explorado las dos formas principales de ejecutar código Python: el intérprete interactivo y los scripts. El intérprete nos ofrece un entorno de experimentación inmediata, ideal para aprender y probar ideas rápidamente. Por otro lado, los scripts nos permiten crear programas permanentes, reutilizables y más complejos. Ambos métodos tienen sus ventajas y casos de uso específicos, y aprovecharlos adecuadamente te ayudará a ser más eficiente en el desarrollo con Python. En el próximo artículo, profundizaremos en la sintaxis básica de Python, incluyendo la importancia de la sangría, los comentarios y las convenciones de código que te permitirán escribir programas legibles y bien estructurados.