关于python:如何打印/返回文件中的行数

How do i print/return the number of lines in a file

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
How to get line count cheaply in Python?

我想打印一个文件里有多少行。

到目前为止,我只知道这个,但是它会打印每行的编号,我不知道如何让python只打印最后一行。

1
2
3
4
5
6
7
8
9
10
11
12
13
filename = input('Filename: ')

f= open(filename,'r')

counter = 1

line = f.readline()
while(line):
    clean_line = line.strip()
    print(counter)
    line = f.readline()
    counter += 1
f.close()

我想去…

1
2
with open('yourfile') as fin:
    print sum(1 for line in fin)

这就节省了将文件读取到内存中的时间。


如果您不需要在每一行上循环,可以使用:

1
counter = len(f.readlines())


1
2
3
4
f = open(filename, 'r')
lines = f.readlines()
number_of_lines = len(lines)
f.close()