Мне нужно либо вызвать exec () или eval () на основе входной строки "s"
Если "s" было выражением, после вызова eval () я хочу напечатать результат, еслирезультат не был None
Если "s" было оператором, то просто exec ().Если это утверждение что-то печатает, то пусть будет так.
s = "1 == 2" # user input
# ---
try:
v = eval(s)
print "v->", v
except:
print "eval failed!"
# ---
try:
exec(s)
except:
print "exec failed!"
Например, "s" может быть:
s = "print 123"
И в этом случае следует использовать exec ().
Конечно, я не хочу пробовать сначала eval (), и если это не удастся, вызовите exec ()