Yours in namelessness (was: How to concatenate external files ..?)
Cameron Laird
claird at starbase.neosoft.com
Thu Jun 29 11:21:03 EDT 2000
In article <slrn8lmb4t.lpi.thantos at brimstone.mecha>,
Alexander Williams <thantos at gw.total-web.net> wrote:
>On Thu, 29 Jun 2000 09:59:15 GMT, richard_chamberlain at my-deja.com
><richard_chamberlain at my-deja.com> wrote:
>
>> file=open(x,'r')
>
>Teach me to post while still mostly asleep here at the office. I
>forgot entirely about opening the iterated filename for reading.
>Bugger.
>
>To try and make up for it, how about this wee gem?
>
>> # "fls" is the globbed list of filenames
>> # "outfile" is the file object already opened to write to
>> flsHandles = map(lambda f: open(f, 'r').read, fls)
>> for fH in flsHandles:
>> outfile.write(fH())
>
>Note that you never explicitly give each opened file its own name;
>instead, you create a list of all the read methods of all the file
>objects created dynamically from the list of filenames. (That refered
>to by "open(FILENAME, 'r').open" is just a function/method reference,
>it can still be invoked.)
.
.
.
Well, let's get even more anonymous, and suggest
for fH in = map(lambda f: open(f, 'r').read, fls):
outfile.write(fH())
--
Cameron Laird <claird at NeoSoft.com>
Business: http://www.Phaseit.net
Personal: http://starbase.neosoft.com/~claird/home.html
More information about the Python-list
mailing list