(+ 0 1 2 3 4 5) => (apply '+ '(0 1 2 3 4 5))
In this python code the op becomes a string (from a symbol), and a binop only. It can only do ("+" 0 1), but not more.
That's why a proper book teaches this meta evaluator starting with apply, not such limited lambda's.