面试题答案
一键面试read()
方法- 示例代码:
with open('file.txt', 'r') as f:
content = f.read()
- **适用场景**:适用于小文件。因为它会一次性将整个文件内容读入内存,如果文件过大,可能会导致内存不足。其优势在于代码简洁,操作方便;劣势在于处理大文件时内存消耗大。
2. readlines()
方法
- 示例代码:
with open('file.txt', 'r') as f:
lines = f.readlines()
- **适用场景**:适合处理中等大小文件,它将文件内容按行读取并以列表形式返回。相比于 `read()`,在处理需要逐行操作数据的场景时更方便,如统计行数等。但如果文件过大,同样会占用较多内存,因为要将所有行存储在列表中。对于大文件,占用内存问题突出;对于小文件,相比 `read()` 会稍复杂些。
3. 逐行读取 - 示例代码:
with open('file.txt', 'r') as f:
for line in f:
# 处理每一行内容
pass
- **适用场景**:非常适合处理大文件。它不会一次性将整个文件读入内存,而是逐行读取,大大减少内存占用。但如果需要整体操作文件内容,代码会相对复杂,不像前两种方法能直接获取全量内容。