15 分钟
Python 入门

打开与读取文件

掌握 open() 函数和文件读取方法

  • 用 open() 打开文件
  • read/readline/readlines 读取
  • 理解文件路径和 with 语句

打开文件

用 open() 打开文件,操作完要关闭。推荐用 with 语句自动关闭:

示例代码(可运行)
ℹ️在线环境说明

朋友好学里的文件操作都是在浏览器虚拟文件系统里跑的,刷新页面文件就重置,这是正常现象。

三种读取方式

示例代码(可运行)

逐行遍历(最常用)

示例代码(可运行)
💡strip() 的作用

每行末尾有换行符 \n,用 strip() 去掉首尾空白(包括换行符)。

预测输出
with open("a.txt", "w") as f:
    f.write("1\n2\n3")
with open("a.txt") as f:
    print(len(f.readlines()))
找 Bug文件打开后没关,可能导致资源泄漏。直接用 with 语句,它会自动帮你关文件。
f = open("test.txt") print(f.read()) # 忘记关闭文件
填空题填写空白处的代码
with open("a.txt", "r") f: content = f.() print(content)
选择题

readlines() 返回什么?

选择题

with open('f.txt') as f: 的好处是?

资深工程师加餐

底层原理 · 大厂视角 · 工程经验,点卡片展开

Python 里整数、字符串甚至函数都是对象,堆在内存里;变量不是装东西的盒子,而是一张贴在对象上的「名字标签」(引用)。id(x) 看对象身份,is 比身份、== 比值。CPython 会缓存 -5~256 的小整数,所以 a=1;b=1 时 a is b 为 True,但 a=300;b=300 未必。结论:判断值是否相等永远用 ==,判断是不是 None 才用 is。

挑战任务

文件读取

简单+50 XP

创建文件写入3行文字,然后逐行读取并输出。

文件读取
2 个测试用例

课后作业

文件字数统计

中等+20 XP

创建文件,统计行数、字符数。

文件字数统计
1 个测试用例