📖 知识点
readline () 基础用法
文件对象调用 .readline(),读取一行文本,返回字符串。语法:
line = 文件对象.readline()
完整示例:
f = open("article.txt", "r", encoding="utf-8")
line1 = f.readline()
print(line1)
line2 = f.readline()
print(line2)
f.close()
关键特性:
每次调用 readline (),只读取一行,读完指针自动移到下一行
返回的字符串自带末尾换行符
\n读到文件末尾时,
readline()返回空字符串""搭配 while 循环,可以循环读取文件所有行
循环逐行读取示例:
f = open("article.txt", "r", encoding="utf-8")
while True:
line = f.readline()
if line == "": # 判断读到文件末尾
break
print(line.strip()) # strip()去掉换行空格
f.close()
💡 对比区分
read ():一次性读取全部内容
readline ():一次只读一行
⚔️ Kata 实战任务
任务需求:
使用上一节课的
article.txt,文件内内容:
Python Kata 每日练习
日日精进,久久为功
r 模式打开文件,utf-8 编码
调用两次 readline (),分别读取第 1 行、第 2 行
打印两行内容(可以使用 strip () 去除多余换行)
关闭文件
参考代码
f = open("article.txt", "r", encoding="utf-8")
line_1 = f.readline()
line_2 = f.readline()
print("第一行:", line_1.strip())
print("第二行:", line_2.strip())
f.close()
运行输出:
第一行: Python Kata 每日练习
第二行: 日日精进,久久为功
🧠 思考题
readline () 返回的字符串自带
\n换行符,strip()的作用是什么?如果不使用 strip,打印会多空一行,试一下。如果文件有 1000 行,用 while 循环 + readline () 读取,对比一次性 read (),有什么优势?