python 获取某一个文件总行数
时间: 2024-09-13 15:08:38 浏览: 50
在Python中,获取一个文件的总行数可以使用内置的`open()`函数配合文件读取操作。以下是一个简单的示例:
```python
def count_lines(filename):
# 使用with语句打开文件,确保文件最终会被正确关闭
with open(filename, 'r') as file:
# 使用for循环读取文件的每一行,计数器每读取一行就加1
line_count = sum(1 for line in file)
return line_count
# 调用函数并传入文件名
total_lines = count_lines('example.txt')
print(f'文件总行数为:{total_lines}')
```
上述代码中的`count_lines`函数打开一个名为`filename`的文件,然后使用`sum()`函数和生成器表达式来遍历文件的每一行,实现对行数的统计。生成器表达式中的`1 for line in file`为每读取一行就产生一个1,`sum()`函数将所有产生的1累加起来得到文件的总行数。
需要注意的是,在读取大文件时,上述方法会将整个文件内容一次性加载到内存中,这可能会消耗大量内存资源。对于大文件,可以使用以下更高效的方法:
```python
def count_lines_efficiently(filename):
line_count = 0
with open(filename, 'r') as file:
for line in file:
line_count += 1
return line_count
```
这种方法逐行读取并计数,不会一次性将整个文件内容加载到内存中,从而更加节省内存。
阅读全文