📖 知识点
read () 用法
文件对象调用 .read(),读取文件全部内容,作为字符串返回。语法:
content = 文件对象.read()
完整流程:open打开 → read读取 → close关闭
# 只读r模式打开
f = open("note.txt", "r", encoding="utf-8")
# 一次性读取全部内容
text = f.read()
print(text)
# 关闭文件
f.close()
补充要点:
read()读完文件后,文件指针会移动到文件末尾;再次调用 read (),读到空字符串适合小文件;超大文件不要一次性 read (),会占用大量内存
读取出来的内容是字符串,可以用字符串方法(strip、split 等)处理
带参数 read (n)
read(数字),代表读取n 个字符(不是字节)
# 只读取前5个字符
text = f.read(5)
⚠️ 注意:读取中文文件必须写
encoding="utf-8",否则中文乱码。
⚔️ Kata 实战任务
任务需求:
先手动新建
article.txt,里面写入下面这段文字:
Python Kata 每日练习
日日精进,久久为功
使用 open r 模式打开文件,utf-8 编码
使用 read () 读取全部内容,保存到变量
打印读取到的文本
关闭文件
参考代码
# 打开文件
f = open("article.txt", "r", encoding="utf-8")
# 读取全部内容
content = f.read()
# 打印
print("文件内容:")
print(content)
# 关闭文件
f.close()
运行输出:
文件内容:
Python Kata 每日练习
日日精进,久久为功
🧠 思考题
在 read () 之后,再次执行一次
print(f.read()),会输出什么?为什么?如果文件很大(几十万行日志),直接用 read () 一次性读取有什么弊端?