農會 資訊管理類程式設計110 年第 9 題單選題
在Python中,我們可以使用open(file, mode)來開啟檔案,其中的mode為檔案物件存取模式,下列何者為正確的模式?
A、B、C正確答案
Python open() 的 mode 引數中,r(讀)、w(寫)、a(附加)可單獨使用,b(二進位)須搭配其他模式。
為什麼答案是 A、B、C
r 代表 read(讀取),是 open() 的預設模式,可單獨使用來讀取檔案內容。
考點:讀取模式考點:寫入模式考點:附加模式考點:二進位修飾
載入中…
完整詳解
Pro · 無限重點 Python open() 的 mode 引數中,r(讀)、w(寫)、a(附加)可單獨使用,b(二進位)須搭配其他模式。
秒解技巧:區分「基礎模式」與「修飾字元」。r、w、a 可獨立運作,b、t、+ 必須依附基礎模式,故排除 b。
逐選項分析
A讀取模式✓ 正確
r 代表 read(讀取),是 open() 的預設模式,可單獨使用來讀取檔案內容。
B寫入模式✓ 正確
w 代表 write(寫入),可單獨使用。若檔案存在會清空並覆寫,不存在則新建。
C附加模式✓ 正確
a 代表 append(附加),可單獨使用。寫入的資料會接續在檔案最末端,不會覆蓋原內容。
D二進位修飾✕ 陷阱
b 代表 binary(二進位),屬於修飾字元,必須搭配 r/w/a 使用(如 'rb'),單獨使用會引發 ValueError。
Python open() 常用 mode 引數對照表
| 模式字元 | 意義 | 說明 |
|---|
| r | Read (讀取) | 預設模式,開啟檔案用於讀取 |
| w | Write (寫入) | 開啟檔案用於寫入,會覆蓋原有內容 |
| a | Append (附加) | 開啟檔案用於寫入,新增於檔案末尾 |
| b | Binary (二進位) | 需搭配 r/w/a 使用 (如 'rb'),不可單獨使用 |
考生常誤以為 'b' (二進位) 也是獨立的存取模式。實際上 'b' 只是修飾字元,必須與 'r'、'w' 或 'a' 結合(如 'rb')才能正確開啟檔案,單獨輸入 'b' 會丟擲 ValueError。