I am puzzled by what appears to be a scope issue - obviously I have
something wrong :-)

Why does this work:

if __name__ == 'main':
  execfile('test-data.py')
  print data

and yet this doesn't (I get "NameError: global name 'data' not
defined"):

def X():
  execfile('test-data.py')
  print data

where test-data.py is:

data = [1,2,3,4]

I checked help on execfile and could only find the following
(mystifying) sentence:

"execfile() cannot be used reliably to modify a function’s locals."

Thanks
Peter
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to