Python Sentencia incorporada exec

Python 内置函数Funciones incorporadas de Python


Descripción

exec ejecuta sentencias de Python almacenadas en cadenas o archivos; en comparación con eval, exec puede ejecutar código de Python más complejo.

Cabe señalar que en Python 2 exec no es una función, sino una sentencia (statement) incorporada, pero en Python 2 existe una función execfile(). Se puede entender que Python 3 integró la funcionalidad de la sentencia exec y la función execfile() en una nueva función exec().

Sintaxis

La siguiente es la sintaxis de exec:

exec obj

Parámetros

  • obj -- La expresión a ejecutar.

Valor de retorno

El valor de retorno de exec es siempre None.


Ejemplos

A continuación se muestran ejemplos del uso de exec:

Ejemplo 1

>>>exec 'print "Hello World"' Hello World # Cadena de sentencia de una sola línea >>> exec "print 'example.com'" ejemplo.com # Cadena de sentencia de varias líneas >>> exec """for i in range(5): ... print "iter time: %d" % i ... """ iter time: 0 iter time: 1 iter time: 2 iter time: 3 iter time: 4

Ejemplo 2

x = 10 expr = """ z = 30 sum = x + y + z print(sum) """ def func(): y = 20 exec(expr) exec(expr, {'x': 1, 'y': 2}) exec(expr, {'x': 1, 'y': 2}, {'y': 3, 'z': 4}) func()

Resultado de salida:

60
33
34

Python 内置函数Funciones incorporadas de Python

Otras extensiones