-1
的標準答案,「我怎麼能保證文件在Python關閉」是包裝的命令在一個「with」語句,使調用析構函數退出「with」塊。在python,確保文件被關閉時,不能使用「與」
但約,你不能這樣做,因爲文件句柄需要跨越大片的代碼保持開放的情況下,是什麼?例如,在對象構造函數中打開文件句柄,將其保存到對象屬性中,然後在許多對象方法中引用文件句柄。
這將是可能的文件句柄的開放移動到方法本身,但基本上在這種情況下,我會打開/每一個方法被調用時,這是效率遠不如關閉文件。
我試圖在對象的析構(以下簡稱「德爾」的方法)將「關閉」命令,但這不起作用。
爲什麼不能在析構函數中關閉文件?當你完成它時,對象是不會被銷燬的?如果它失敗並停留在周圍,你可以將它包裝在'try'-'except'''finally'塊中。 – JohanL
我通過殺死內核來終止程序(即我在Spyder中點擊大停止按鈕)。如果有的話,我不確定在這種情況下執行什麼。 – Stephen
嘗試/除了/最後可能不會工作,因爲再次,「開放」命令是在構造函數中,但隨後程序移動並開始從其他方法寫入 – Stephen