正在加载...

稳妥地关闭文件

上一页里,关闭文件的 close 要你自己写。如果程序在那一行之前会停住,文件就可能一直开着。有了 with,缩进的几行一结束,文件就关上了。就算其中某一行会停住,文件照样会关上。

屏幕上显示 saved,bread 留在文件里

python
with open("plate.txt", "w", encoding="utf-8") as plate:
    plate.write("bread\n")
print("saved")

运行后屏幕上只显示 saved。bread 不在屏幕上,而是在 plate.txt 里,因为 write 运行的时候文件还开着。接着缩进结束,文件关闭,然后才轮到 print。这个程序里没有 close,也不要在 print 后面或缩进里面补上。plate 这个名字只在缩进结束之前代表打开的文件。encoding="utf-8" 让字母以文本形式保存,w 则依旧会清掉文件里原有的旧词。

write 那一行缩进在 with 下面,正是这层缩进让它处在里面。print("saved") 没有缩进,所以在外面,只有里面的部分顺利做完,它才会运行。

如果在同一层缩进下写 1 / 0,程序会停住,saved 也不会出现。文件仍然会关闭:程序因这次停住而结束之前,离开缩进就已经把文件关上了。这一行不在本页的程序里。

下一页讲文件的路径。本页只管把文件关好。

缩进一结束,文件就关闭

小结:屏幕上是 saved,plate.txt 里是 bread,整个程序里没有 close。缩进里有一行会停住时,文件照样关闭,saved 也不会出现。接下来是文件的路径。

🧠 测试您的知识

准备开始

测试您的知识

通过这个互动测验挑战自己,看看你对这个主题的理解程度如何

❓
5
问题
🎯
70%
及格要求
♾️
∞
时间
🔄
∞
尝试次数

📝 说明

  • 仔细阅读每个问题
  • 为每个问题选择最佳答案
  • 您可以随时重新参加测验
  • 您的进度将显示在顶部