如何在python中获取列表列表的长度

use*_*562 14 python list readlines

所以,如果我有一个名为myList的列表,我用它len(myList)来查找该列表中的元素数量.精细.但是如何在列表中找到列表的数量?

text = open("filetest.txt", "r")
myLines = text.readlines()
numLines=len(myLines)
print numLines
Run Code Online (Sandbox Code Playgroud)

上面使用的文本文件有3行4个元素,用逗号分隔.变量numLines打印为'4'而不是'3'.因此,len(myLines)返回每个列表中的元素数量而不是列表列表的长度.

当我打印时,myLines[0]我得到第一个列表,myLines[1]第二个列表等.但是len(myLines)没有显示列表的数量,这应该与"行数"相同.

我需要确定从文件中读取多少行.

Jav*_*nos 21

这会将数据保存在列表列表中.

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]
Run Code Online (Sandbox Code Playgroud)


duh*_*ime 1

“上面使用的文本文件有 3 行,每行 4 个元素,以逗号分隔。变量 numLines 打印为“4”而不是“3”。因此,len(myLines) 返回每个列表中的元素数量,而不是列表的长度清单的清单。”

听起来您正在阅读 3 行 4 列的 .csv。如果是这种情况,您可以使用 .split() 方法查找行数和行数:

text = open("filetest.txt", "r").read()
myRows = text.split("\n")      #this method tells Python to split your filetest object each time it encounters a line break 
print len(myRows)              #will tell you how many rows you have
for row in myRows:
  myColumns = row.split(",")   #this method will consider each of your rows one at a time. For each of those rows, it will split that row each time it encounters a comma.  
  print len(myColumns)         #will tell you, for each of your rows, how many columns that row contains
Run Code Online (Sandbox Code Playgroud)