簡體   English   中英

Python 3.6 無法使用“r+b”模式打開只讀文件

[英]Python 3.6 fails to open read-only file using "r+b" mode

在 Python 3.6 中,當我嘗試使用權限為 '-r--r--r--'(在 CentOS7 中)的文件“打開('foobar',“r+b”)時,出現權限失敗: “builtins.PermissionError:[Errno 13] 權限被拒絕:'full/path/to/foobar'”

它用“r”打開就好了,如果權限是“-rw-rw-rw-”,“r+b”就可以正常工作。

我確實需要以只讀方式打開這些文件,我希望它們在目錄中具有只讀保護(以便它們不會被其他代碼無意中更改),並且我確實需要將它們作為二進制文件讀取。 這是 Python 3.6 的特性/錯誤嗎?

我想知道我是否做錯了什么,或者如果沒有,是否有一些解決方法。 我真的很想避免現在升級到 3.8。

您正在使用+模式,它試圖打開文件進行更新。 嘗試不使用+ ,它應該可以工作。

根據幫助:

'+' 打開磁盤文件進行更新(讀寫)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM