On Jan 8, 2008 6:54 AM, BJ Swope <[EMAIL PROTECTED]> wrote:
> > > given a list such as
> > >
> > > ['messages', 'recipients', 'viruses']
> > >
> > > how would I iterate over the list and use the values as variables and
> > > open the variable names a files?
> > >
> > > I tried
> > >
> > > for outfile in ['messages', 'recipients', 'viruses']:
> > >     filename = os.path.join(Host_Path, outfile)
> > >     outfile = open(filename, 'w')
> > >
> > > But it's not working.
>
> Yep, defining "not working" is always helpful! :)
>
>  I want to have all 3 files open at the same time.  I will write to each of
> the files later in my script but just the last file is open for writing.

Your code successfully opened them all, but kept a reference only to
the last one.

Try something like:

outfiles = [open(os.path.join(Host_Path, fname), 'w') for fname in fnames]

-- 
Neil Cerutti <[EMAIL PROTECTED]>
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to