當前位置:
首頁 > 最新 > tempfile.NamedTemporaryFile創建臨時文件在windows沒有許可權打開

tempfile.NamedTemporaryFile創建臨時文件在windows沒有許可權打開

記錄下來是因為當時谷歌這個問題時發現,網上也有很多人遇到這個問題,我也因為這個問題導致了一個bug,所以告誡自己以後使用API多仔細看看文檔。

python的tempfile模塊用於創建系統臨時文件,是一個很有用的模塊。通過tempfile.NamedTemporaryFile,可以輕易的創建臨時文件,並返回一個文件對象,文件名可以通過對象的name屬性獲取,且創建的臨時文件會在關閉後自動刪除。下面這段python代碼創建一個臨時文件,並再次打開該臨時文件,寫入數據,然後再次打開,讀取文件,並按行列印文件內容。

在linux上運行上面的python代碼,會創建一個臨時文件,且程序退出後該臨時文件會自動刪除,輸出如下:

但是在windows上運行時,提示沒有許可權,不能打開創建的臨時文件,是不是感覺很奇怪。

查看官方文檔,該API解釋如下:

注意其中的一句話:

大概意思是,當這個臨時文件處於打開狀態,在unix平台,該名字可以用於再次打開臨時文件,但是在windows不能。所以,如果要在windows打開該臨時文件,需要將文件關閉,然後再打開,操作完文件後,再調用os.remove刪除臨時文件。

參考:https://docs.python.org/2/library/tempfile.html


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 reborncodinglife 的精彩文章:

TAG:reborncodinglife |