|
1
7
最后,我发现积木经常被过度使用。文件关闭(以及其他一些类似的模式)非常重要,Python 3.0将有一个 具有 声明只是以一种稍微不那么模糊的方式涵盖了这个基础。
试试这个。看看它有什么作用。
|
|
|
2
3
我不同意其他提到统一try/except/finally块的答案。这将改变行为,因为如果打开失败,您不希望finally块尝试关闭文件。这里的分割块是正确的(尽管使用新的“
read()失败的原因有很多。例如,数据可能太大而无法放入内存,或者用户可能用control-C发出了中断信号。这些情况不会被IOError捕获,而是由调用者处理(或不处理),调用者可能想根据应用程序的性质做不同的事情。 然而,代码仍然有义务清理文件,即使它没有处理错误,因此最终没有异常。 |
|
|
3
0
使用最新版本的Python,除了try and try finally之外,您不需要嵌套try。try except finally已经统一:
|
|
|
4
0
|