Jeremy wrote: > I have a most aggravating problem. I don't understand what is causing > readlines() not to read all the lines in the file.
Answer all of Peter Hansen's questions, then read on ... You are on platform X; did you get the file from platform Y where Y != X? Where did you get the file from? How was it constructed? What is the encoding: ascii/utf-8/iso-something/cp125x/dunno/what's-an-encoding ... > I have the following > syntax: > > > > # some initial stuff > XS = xsdir(Datapath + '/xsdir', options.debug) > # some more stuff > > class xsdir(object): #{{{1 > """This class handles all of the data and methods for reading > the xsdir file.""" > > def __init__(self, Datapath, debug=False): > self.xsdir = file(Datapath, 'r') # File object If you replace 'r' by 'rU', does the behaviour change? > self.lines = self.xsdir.readlines() > if debug: > print self.lines Add this: print len(self.lines) > # and then other stuff as well > > > I can see all the lines in the list self.lines, These are *not* pedantic questions: How many can you "see"? What does "see" mean? What is your definition of "line"? > but they are not all the > lines in the file. When I look at the file in Vim, I can see all the > lines, Repeat above questions. AND where are the extra lines that you can "see" with vim? In one block at the end/beginning/middle? Randomly interspersed? Are you sure you are not being confused by a screen-wraparound effect? but Python cannot. Can someone help me with this one? > Thanks, > Jeremy > What does "wc -l yourfile" tell you? [If you are on Windows, get a copy of wc.exe from the gnuwin32 site.] -- http://mail.python.org/mailman/listinfo/python-list