Tim Peters wrote: >> bdict = dict.fromkeys(open(bfile).readlines()) >> >> for line in open(afile): >> if line not in bdict: >> print line, >> >> </F> > > Note that an open file is an iterable object, yielding the lines in > the file. The "for" loop exploited that above, but fromkeys() can > also exploit it. That is, > > bdict = dict.fromkeys(open(bfile)) > > is good enough (there's no need for the .readlines()).
(sigh. my brain knows that, but my fingers keep forgetting) and yes, for this purpose, "dict.fromkeys" can be replaced with "set". bdict = set(open(bfile)) (and then you can save a few more bytes by renaming the variable...) </F> -- http://mail.python.org/mailman/listinfo/python-list