On Thu, Feb 19, 2009 at 2:28 PM, Mike Driscoll <kyoso...@gmail.com> wrote: > On Feb 19, 4:22 pm, Mike Driscoll <kyoso...@gmail.com> wrote: >> On Feb 19, 3:56 pm, oamram <oam...@gmail.com> wrote: >> >> > Hi Pythonist, >> > new to python. i have a directory with about 50 text file and i need to >> > iterate through them and get >> > line 7 to 11 from each file and write those lines into another file(one >> > file >> > that will contain all lines). >> >> > Cheers, Omer. >> > -- >> > View this message in >> > context:http://www.nabble.com/iterating-through-files-tp22048070p22048070.html >> > Sent from the Python - python-list mailing list archive at Nabble.com. >> >> I would recommend using the glob module to grab a list of the files >> you want or you can just create your own list. Then use a loop to grab >> the lines you want. Something like this: >> >> f = open(textFile) >> newFile = open(newFileName, "a") >> x = 1 >> for line in f.readlines(): >> if x >=7 and x <=11: >> newFile.write(line + "\n") >> >> You could even put the above inside a loop that loops over the list of >> files. Anyway, that's one approach. I'm sure there are many others. >> >> Mike > > Oops...I forgot to iterate the counter. The code should look like > this: > > <code> > > f = open(textFile) > newFile = open(newFileName, "a") > x = 1 > for line in f.readlines(): > if x >=7 and x <=11: > newFile.write(line + "\n") > x +=1 > > </code>
Or you could use enumerate(); also, readlines() isn't necessary: f = open(textFile) newFile = open(newFileName, "a") for x, line in enumerate(f): if x >=7 and x <=11: newFile.write(line + "\n") Sounds a bit like homework to me though... Cheers, Chris -- Follow the path of the Iguana... http://rebertia.com -- http://mail.python.org/mailman/listinfo/python-list