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


Автор: kosmonaFFFt 23.2.2009, 11:08
Доброго всем времени суток...

Мну надо юзать eval и в одних случаях именам функций sin cos и т. д. должны соответствовать
функции из math, а в других классы из sympy.functions. Можно ли как-нить это по красивому замутить,
чтоб не делать например два словаря одних и тех же функций
Код

SYM_FN = {'sin' : sympy.functions.sin...}
MATH_FN = {'sin' : math.sin...}

и не юзать 
Код
from что-то import *
 (не люблю я это smile)
Например что нить в стиле
Код

fn = eval(fnString, sympy.functions.__что-то-там__, {'x' : sympy.abc.Symbol('x')})

где sympy.functions.__что-то-там__ будет словарем имен классов модуля...
Надеюсь написал достаточно внятно...

Заранее спасибо...

З.Ы. Всех с днем защитников отечества... smile

Автор: Void 23.2.2009, 11:19
__что-то-там__ называется __dict__ smile

Автор: kosmonaFFFt 24.2.2009, 15:10
Спасибо...

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