How to get length of a list of lists in python

user3022562 picture user3022562 · Nov 22, 2013 · Viewed 163k times · Source

So, if I have a list called myList I use len(myList) to find the number of elements in that list. Fine. But how do I find the number of lists in a list?

text = open("filetest.txt", "r")
myLines = text.readlines()
numLines=len(myLines)
print numLines

The above text file used has 3 lines of 4 elements separated by commas. The variable numLines prints out as '4' not '3'. So, len(myLines) is returning the number of elements in each list not the length of the list of lists.

When I print myLines[0] I get the first list, myLines[1] the second list, etc. But len(myLines) does not show me the number of lists, which should be the same as 'number of lines'.

I need to determine how many lines are being read from the file.

Answer

Javier Castellanos picture Javier Castellanos · Nov 22, 2013

This saves the data in a list of lists.

text = open("filetest.txt", "r")
data = [ ]
for line in text:
    data.append( line.strip().split() )

print "number of lines ", len(data)
print "number of columns ", len(data[0])

print "element in first row column two ", data[0][1]