Hi all, Can someone explain why the following occurs? a = numpy.zeros((100)) b = numpy.ones((10)) a[20:30] = b # okay eval('a[50:60] = b') # raises SyntaxError: invalid syntax Is there some line mangling that the interpretor does that eval doesn't do? I see there's room for global and local parameters to eval. Would setting one of those be the answer? Cheers, Angus. -- AJC McMorland, PhD Student Physiology, University of Auckland Armourer, Auckland University Fencing Secretary, Fencing North Inc.
On 25/09/06, Angus McMorland <amcmorl@gmail.com> wrote:
Hi all,
Can someone explain why the following occurs?
a = numpy.zeros((100)) b = numpy.ones((10)) a[20:30] = b # okay eval('a[50:60] = b') # raises SyntaxError: invalid syntax
Is there some line mangling that the interpretor does that eval doesn't do?
No. Eval evaluates expressions, that is, formulas producing a value. "a=b" does not produce a value, so you are obtaining the same error you would if you'd written if a=b: ... The way you run code that doesn't return a value is with "exec". A. M. Archibald
participants (2)
-
A. M. Archibald
-
Angus McMorland