Codex-Workflows:基于代码知识库与工作流引擎的智能开发自动化实践
2026/5/10 4:30:51
你想掌握 Python 中逐行读取文件内容的三种常用方法,了解每种方法的使用方式、特点和适用场景,这是文件操作中非常基础且高频的需求。
这是 Python 中最简洁、最高效的逐行读取方式,无需手动管理文件指针,Python 会自动按行读取,且内存占用极低(不会一次性加载整个文件)。
python
# 打开文件(使用with语句可自动关闭文件,避免资源泄漏) with open("test.txt", "r", encoding="utf-8") as f: # 直接遍历文件对象,逐行读取 for line_num, line in enumerate(f, 1): # enumerate从1开始计数行号 # 去除每行末尾的换行符(\n)和空格 clean_line = line.strip() print(f"第{line_num}行内容:{clean_line}")with open(...)是 Python 的上下文管理器,代码块执行完毕后会自动关闭文件,避免手动调用f.close()的遗漏;line.strip()用于去除每行末尾的换行符\n、回车符\r和首尾空格,根据需求可选。readline()方法会每次读取文件的一行内容,返回字符串(包含换行符),直到读取到文件末尾返回空字符串"",适合需要手动控制读取节奏的场景。
python
# 打开文件 with open("test.txt", "r", encoding="utf-8") as f: line_num = 1 # 循环读取每行,直到返回空字符串 while True: line = f.readline() # 判断是否读取到文件末尾 if not line: break clean_line = line.strip() print(f"第{line_num}行内容:{clean_line}") line_num += 1readline()每次只读取一行,需配合while循环使用;readline()返回空字符串,此时终止循环;f.seek(0)重置文件指针到开头,重新读取(适合需要重复读取文件的场景)。readlines()会一次性将文件所有内容读取到一个列表中,列表的每个元素对应文件的一行,再通过遍历列表实现逐行读取。
python
# 打开文件 with open("test.txt", "r", encoding="utf-8") as f: # 一次性读取所有行到列表 all_lines = f.readlines() # 遍历列表逐行处理 for line_num, line in enumerate(all_lines, 1): clean_line = line.strip() print(f"第{line_num}行内容:{clean_line}")readlines()会将整个文件加载到内存,生成一个字符串列表;all_lines[0:10]快速获取指定行范围的内容。核心原则:读取大文件优先用方法 1,小文件且需复用内容用方法 3,手动控制读取流程用方法 2。