Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > Запуск python кода


Автор: stanismorozov 30.12.2012, 18:07
Добрый день!
Я слышал, что в Python3 можно каким-то образом запускать на исполнение код другой python-программы. Код должен именно храниться в переменной. Каким образом это можно сделать? Заранее благодарен за помощь!

Автор: 4ell 2.1.2013, 15:03
Код

x = 133
a = eval('x**8 - x**6 + 149')
exec('b = a/x')
print(a, b)

Только стоит помнить что эти функции не безопасны. Неужели без них не обойтись?

Автор: spSerg 2.1.2013, 17:38
у eval есть еще пара параметров, которые можно использовать для организации песочницы:
Код

eval(source[, globals[, locals]]) -> value
# Evaluate the source in the context of globals and locals.
# The source may be a string representing a Python expression or a code object as returned by compile().
# The globals must be a dictionary and locals can be any mapping, defaulting to the current globals and locals.
# If only globals is given, locals defaults to it.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)