Python встроенная инструкция exec

Python 内置函数Встроенные функции Python


Описание

exec выполняет инструкции Python, хранящиеся в строке или файле. По сравнению с eval, exec может выполнять более сложный код Python.

Следует отметить, что в Python 2 exec — не функция, а встроенная инструкция. Однако в Python 2 есть функция execfile(). Можно понять, что Python 3 объединил функциональность инструкции exec и функции execfile() в новую функцию exec().

Синтаксис

Ниже приведён синтаксис exec:

exec obj

Parameters

  • obj -- выражение, которое нужно выполнить.

Возвращаемое значение

Возвращаемое значение exec всегда None.


Примеры

Ниже приведены примеры использования exec:

Пример 1

>>>exec 'print "Hello World"' Hello World # Строка однострочной инструкции >>> exec "print 'example.com'" example.com # Строка многострочного оператора >>> 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

Пример 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()

Результат вывода:

60
33
34

Python 内置函数Встроенные функции Python

Другие расширения