-1

我正在尝试在 python 中读取一些文本文件,计算它们的行号,最后将这些计数相加。当代码为每个文件运行时,它会一直工作,直到它到达一个更大的文件,并且我收到此错误 'Memory error' 。请帮助我如何解决它并继续。

这是我的代码:

def Count_Lines():    
  infile = open(File_Name,'r').read()
  nLine = infile.count('\n')
  print nLine
4

1 回答 1

0

调用read()将读取整个文件的内容,这可能太大而无法放入内存。

这会逐行读取文件,避免将整个内容存储在内存中(除非整个内容是一大行......)

count = 0
for file in files:
  with open(file) as F:
    file_count = sum( 1 for line in F )
  count += file_count
于 2013-04-19T16:09:04.957 回答