# Python提供了三种主要的文件读取方法,每种方法都有其特定的用途和特点: # read():一次性读取整个文件内容 # readline():逐行读取文件,每次读取一行 # readlines():一次性读取所有行,返回列表 # 特性 read() readline() readlines() # 读取方式 一次性读取全部内容 逐行读取 一次性读取所有行 # 返回类型 字符串 字符串 列表(每行一个元素) # 内存使用 高(整个文件) 低(单行) 高(所有行) # 适用场景 小文件、配置文件 大文件、逐行处理 需要所有行的场景 # 文件指针 移动到文件末尾 移动到下一行 移动到文件末尾 # read()方法 # 一次读取整个文件内容 # 创建测试文件内容,包含多行文本 test_content = """第一行:Python文件读取 第二行:read()方法示例 第三行:一次性读取全部内容 第四行:适合小文件处理 第五行:返回字符串类型""" with open("test-file.txt", "w", encoding="utf-8") as f: f.write(test_content) # 读取整个文件 with open("test-file.txt", "r", encoding="utf-8") as f: content = f.read() print(content) print(f"文件长度{len(content)}") print(f"指针位置{f.tell()}") # readline() 逐行读取 with open("test-file.txt", "r", encoding="utf-8") as f: line_num = 1 while True: line = f.readline() if not line: break print(f"读取第{line_num}行,内容{line}") line_num += 1 # 重置文件指针并演示指定大小读取 print("=== readline() 指定大小读取 ===") with open("test-file.txt", "r", encoding="utf-8") as f: partial_line = f.readline(10) print(f"读取前10个字符: {repr(partial_line)}") print(f"剩余内容: {repr(f.readline())}") # readlines()方法 # 一次读取所有航,返回列表 with open("test-file.txt", "r", encoding="utf-8") as f: lines = f.readlines() print(f"打印数据类型{type(lines)}") print(f"打印数据长度{len(lines)}") print(lines) # for index, line in enumerate(lines, 1): clear_line = line.strip() # 去除收尾空格以及换行符 print(f"第{index}行:{repr(clear_line)}")