如果不用“with”,那么Python会在何时关闭文件呢?答案是:视情况而定。 Python程序员最初学到的东西里有一点就是可以通过迭代法很容易地遍历一个打开文件的全文: f = open('/etc/passwd') for line in f: print(line) 注意上面的代码具有可行性,因为我们的文件对象“f”是一个迭代器。换句话说,“f“ 知道在一个循环或者任何其他的迭代上下文中做什么,比如像列表解析。 我的Python课堂上的大多数学生都具有其他编程语言背景,在使用以前所熟悉的语言时,他们总是在完成文件操作时被期望关闭文件。因此,在我向他们介绍了Python文件操作的