def count_file_lines(filename):
"""
快速统计文件行数
:param filename:
:return:
"""
count = 0
fp = open(filename, "rb")
byte_n = bytes("\n", encoding="utf-8")
while 1:
buffer = fp.read(16*1024*1024)
if not buffer:
count += 1 # 包含最后一行空行 ''
break
count += buffer.count(byte_n)
fp.close()
return count
参考博客: