当然,使用Python统计文件行数是一个非常常见的操作。以下是一个简洁且高效的示例,它展示了如何读取文件并计算其中的行数:
def count_lines_in_file(file_path):
"""
统计并返回指定文件的行数。
:param file_path: 要统计行数的文件的路径。
:return: 文件中的行数。
"""
try:
with open(file_path, 'r', encoding='utf-8') as file:
# 使用enumerate遍历文件对象,但只关心行数,不实际读取文件内容
# 这样可以更高效地处理大文件
return sum(1 for _ in file)
except FileNotFoundError:
print(f"文件 {file_path} 未找到。")
return 0
except Exception as e:
print(f"读取文件 {file_path} 时发生错误:{e}")
return -1
# 示例用法
file_path = 'example.txt' # 替换为你的文件路径
print(f"文件 {file_path} 的行数为:{count_lines_in_file(file_path)}")
这段代码定义了一个`count_lines_in_file`函数,它接受一个文件路径作为参数,并返回该文件的行数。通过使用`with open(...) as file`语法,我们可以确保文件在操作完成后会被正确关闭。通过遍历文件对象(这里我们使用`enumerate`但实际上只关心行数,所以使用`_`作为占位符),我们可以高效地计算行数,而不需要将文件内容全部加载到内存中。这对于处理大文件特别有用。此外,我们还添加了对`FileNotFoundError`和一般异常的捕获,以优雅地处理文件不存在或读取文件时可能发生的错误。