Note, i need the ns+1 because the 'source files are not zero indexed.
On 10/27/07, John <[EMAIL PROTECTED]> wrote:
>
> Here's where I am:
>
>
> def source(filename, vList):
> """ takes a file object and a list of variables as input """
> import re
> # Read the file
> fid=open(filename,'r')
> lines = fid.readlines()
> fid.close()
> #how many variables
> ns=len(lines)/len(vList)
> #predefine the varibles
> for v in vList:
> exec( 'global %s ; %s = [0]*(ns+1)' % (v, v))
>
> # Make it python friendly: put all values in 'single quotes'
> cmd = '\n'.join([re.sub( r'^([^=]+)=(.*)$', r"\1='\2'", v) for v in
> lines])
> exec(cmd)
> for v in vList:
> exec( '%s=%s[1:]' % (v,v))
>
> source('infile.py',['files','nfiles','nreleases'])
>
> print files
> print nreleases
> print nfiles
>
>
>
> But oddly, my output is:
>
> [0, 'ASP_200603', 'ASP_200604', 'ASP_200605']
> [0, '248', '240', '248']
> [0, '3', '3', '3']
>
>
>
> So, I am not properly getting rid of the list[0], is it something with the
> 'global' nature of the vairables... it looks like it's only changing
> locallly in my source function.
>
--
Configuration
``````````````````````````
Plone 2.5.3-final,
CMF-1.6.4,
Zope (Zope 2.9.7-final, python 2.4.4, linux2),
Five 1.4.1,
Python 2.4.4 (#1, Jul 3 2007, 22:58:17) [GCC 4.1.1 20070105 (Red Hat
4.1.1-51)],
PIL 1.1.6
_______________________________________________
Tutor maillist - [email protected]
http://mail.python.org/mailman/listinfo/tutor