Ok, I've read the thread... but how is open(f, 'w').write(stuff) different than lines = open(f).readlines() in terms of bad/good programming practice? I use that second construction quite frequently. VanL