LINUX.ORG.RU

[python] eval

 


0

1

Товарищи питонисты, объясните пожалуйста, в чем отличие

x = eval('f()')
от
x = f()

(области видимости, еще что-то ..?)
Python понадобился для SCons, в исходниках пробую менять eval на вызов функции и получаю разный результат.

Подождите!
Я обязательно на них всех посмотрю, но вопрос исключительно по питону.

user_2190
() автор топика

Навскидку, если ф-я работает со стеком, то eval дает лишний кадр. А так одно и то же.

AIv ★★★★★
()
Ответ на: комментарий от tailgunner

Чем хоть различаются результаты?

Функция, которую вызываю, делает подстановку в строках вида '$A $B' (subst).
Значения переменных берет видимо в том числе из области видимости.

Вопрос чисто теоретический - интересуют все отличия, которые есть в питоне в этих двух вызовах (eval без аргументов и f())

user_2190
() автор топика
Ответ на: комментарий от user_2190

подстановку в строках вида '$A $B' (subst)

щитоето

интересуют все отличия, которые есть в питоне в этих двух вызовах (eval без аргументов и f())

Никаких. Ты хоть документацию читать пробовал?

tailgunner ★★★★★
()
Ответ на: комментарий от AIv

Навскидку, если ф-я работает со стеком, то eval дает лишний кадр


А это отличается от того, чтобы вместо f вызвать g:

def g():
    return f()

user_2190
() автор топика
Ответ на: комментарий от tailgunner

Заменяет в строке $NAME на значения переменной с именем NAME. variable substitution.

Документацию читал, отличий не понял, но в тем не менее результат разный =)

user_2190
() автор топика
Ответ на: комментарий от AIv

Навскидку, если ф-я работает со стеком, то eval дает лишний кадр.

Спасибо большое, дело похоже было действительно в лишнем фрейме.

user_2190
() автор топика
Ответ на: комментарий от shty

лучше посмотри на waf

Чем оно лучше scons кроме фазы конфигурирования? Вопрос не праздный, waf мне кажется сложным и монструозным.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Чем оно лучше scons кроме фазы конфигурирования?
waf мне кажется сложным и монструозным.

эм, взаимоисключающие параграфы... что же там монструозного?

а по теме - более вменяемый, быстрее, логичнее... но, в общем, и скунс тоже работает, и автотулзы кстати тоже :)

shty ★★★★★
()
Ответ на: комментарий от true_admin

это только на первый взгляд, 1-2 собранные конфигурации и прохиляешь что к чему, но мутные места есть

shty ★★★★★
()
Ответ на: комментарий от true_admin

а вот это зря (: у каждого своя любимая лошадка есть

shty ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.