Función exec() en Python

La función exec() en Python es una función incorporada que se utiliza para ejecutar código Python dinámicamente en tiempo de ejecución. Permite ejecutar código almacenado en forma de una cadena de texto o código proporcionado como argumento


Sintaxis función exec() en Python

La sintaxis general de la función exec() es la siguiente:

exec(codigo, variables_globales, variables_locales)

Donde:

  • codigo: Es una cadena de texto que contiene el código Python que se ejecutará.
  • variables_globales (opcional): Es un diccionario que contiene el espacio de nombres global en el que se ejecutará el código. Si no se proporciona, se utilizará el espacio de nombres global actual.
  • variables_locales (opcional): Es un diccionario que contiene el espacio de nombres local en el que se ejecutará el código. Si no se proporciona, se utilizará el espacio de nombres local actual.

Es importante tener en cuenta que la función exec() puede ejecutar cualquier código Python válido, lo que incluye declaraciones, asignaciones, definiciones de funciones y clases, entre otros.


Ejemplo función exec() en Python

Ejecutar un bloque de código:

x = 'name = "John"\nprint(name)'
exec(x)

En este ejemplo, primero se define una cadena de texto llamada x. La cadena x contiene dos líneas de código Python:

  1. name = «John»: Esta línea asigna el valor «John» a la variable name.
  2. print(name): Esta línea imprime el valor de la variable name, que es «John».

Luego, se utiliza la función exec() para ejecutar dinámicamente el código contenido en la cadena x. Cuando se ejecuta exec(x), el código se evalúa en tiempo de ejecución y se realiza lo siguiente:

  1. La variable name se asigna con el valor «John».
  2. Se imprime el valor de la variable name, que es «John».

La salida del programa será: John


Valores de parámetros

ParámetroDescripción
ExpresiónUna cadena o un objeto de código
GlobalesOpcional. Un diccionario que contiene parámetros globales
LocalesOpcional. Un diccionario que contiene parámetros locales.