2013-08-30 46 views
0

我有下面的代碼:我是否必須顯式關閉僅在Jython中打開的文件?

for line in open(fileName, 'r'): 
    <do something> 

起初,我認爲沒有必要關閉文件打開爲只讀,我已經經歷了答案this問題讀但是之後,似乎我必須關閉它,因爲Jython不使用引用計數,因此不會在循環結束時關閉文件。

在這種情況下,當我沒有定義可以關閉的文件處理程序時,我該怎麼做?這種方法(如上所述)打開並讀取文件是錯誤的嗎?

回答

1

這是您自己清理後最安全和最便攜的方式。只需保存文件句柄並在完成後關閉它。

太糟糕了,Jython目前沒有with。這將是完美的解決方案。

# wouldn't it be nice if we could just... 
with open(fileName, 'r') as fh: 
    for line in fh: 
     # do something ... 
相關問題