標籤:coding direct under bytes .com 寫入 清空 總結 utf-8
# -*- coding: utf-8 -*-# 測試檔案名為:# text.txt# 測試檔案內容為:# abcdefg# 每次操作後將檔案複原# r# 以唯讀方式開啟檔案,檔案不可寫# 要開啟的檔案不存在時會報錯# 檔案的指標將會放在檔案的開頭# 這是預設模式# # file = open(‘test.txt‘, ‘r‘)# # FileNotFoundError: [Errno 2] No such file or directory: ‘test.txt‘# file = open(‘text.txt‘, ‘r‘)# print(file.read())# # abcdefg# file.write(‘aaa‘)# # io.UnsupportedOperation: not writable# file.close()# rb# 以二進位格式開啟一個檔案用於唯讀,檔案不可寫# 要開啟的檔案不存在時會報錯# 檔案指標將會放在檔案的開頭# 這是預設模式# # file = open(‘test.txt‘, ‘rb‘)# # FileNotFoundError: [Errno 2] No such file or directory: ‘test.txt‘# file = open(‘text.txt‘,‘rb‘)# print(file.read())# b‘abcdefg‘# # file.write(b‘aaa‘)# # io.UnsupportedOperation: not writable# file.close()# r+# 開啟一個檔案用於讀寫,寫入內容為str# 檔案指標將會放在檔案的開頭# 重新寫入的內容從頭開始替換# file = open(‘text.txt‘, ‘r+‘)# file.write(‘aaa‘)# file.close()# file = open(‘text.txt‘,‘r‘)# print(file.read())# # ‘abcdefg‘# file.close()# rb+# 以二進位格式開啟一個檔案用於讀寫,寫入內容為bytes# 檔案指標將會放在檔案的開頭# 重新寫入的內容從頭開始替換# file = open(‘text.txt‘,‘rb+‘)# # file.write(‘aaa‘)# # TypeError: a bytes-like object is required, not ‘str‘# file.write(b‘aaa‘)# file.close()# file = open(‘text.txt‘,‘rb‘)# print(file.read())# # b‘aaadefg‘# file.close()# w# 開啟一個檔案只用於寫入,寫入內容為str# 檔案不可讀# 如果該檔案已存在則將其覆蓋,原檔案內容將清空# 如果該檔案不存在,建立新檔案# file = open(‘test.txt‘, ‘w‘)# 建立一個空檔案# file = open(‘text.txt‘, ‘w‘)# file.write(‘gfedcba‘)# file = open(‘text.txt‘, ‘r‘)# print(file.read())# file.close()# wb# 以二進位格式開啟一個檔案只用於寫入,寫入內容為bytes# 檔案不可讀# 如果該檔案已存在則將其覆蓋,原檔案內容將清空# 如果該檔案不存在,建立新檔案# file = open(‘test.txt‘, ‘wb‘)# 建立一個空檔案# file = open(‘text.txt‘, ‘wb‘)# file.write(b‘gfedcba‘)# file = open(‘text.txt‘, ‘r‘)# print(file.read())# file.close()# w+# 開啟一個檔案用於讀寫,寫入內容為str# 如果該檔案已存在則將其覆蓋,原檔案內容將清空# 如果該檔案不存在,建立新檔案# file = open(‘test.txt‘, ‘w+‘)# 建立一個空檔案# file = open(‘text.txt‘, ‘w+‘)# file.write(‘gfedcba‘)# file = open(‘text.txt‘, ‘r‘)# print(file.read())# file.close()# wb+# 以二進位格式開啟一個檔案用於讀寫,寫入內容為bytes# 如果該檔案已存在則將其覆蓋# 如果該檔案不存在,建立新檔案# file = open(‘text.txt‘, ‘wb+‘)# file.write(b‘gfedcba‘)# file = open(‘text.txt‘, ‘r‘)# print(file.read())# file.close()# a# 開啟一個檔案用於追加(唯寫),寫入內容為str# 如果該檔案已存在,檔案指標將會放在檔案的結尾,新的內容將會被寫入到已有內容之後# 如果該檔案不存在,建立新檔案進行寫入# file = open(‘test.txt‘, ‘a‘)# 建立一個空檔案# file = open(‘text.txt‘, ‘a‘)# file.write(‘aaa‘)# file.close()# file = open(‘text.txt‘)# print(file.read())# file.close()# ab# 以二進位格式開啟一個檔案用於追加(唯寫),寫入內容為bytes# 如果該檔案已存在,檔案指標將會放在檔案的結尾,新的內容將會被寫入到已有內容之後# 如果該檔案不存在,建立新檔案進行寫入# file = open(‘test.txt‘, ‘ab‘)# 建立一個空檔案# file = open(‘text.txt‘, ‘ab‘)# file.write(b‘aaa‘)# file.close()# file = open(‘text.txt‘)# print(file.read())# file.close()# a+# 開啟一個檔案用於追加(讀寫),寫入內容為str# 如果該檔案已存在,檔案指標將會放在檔案的結尾,新的內容將會被寫入到已有內容之後# 如果該檔案不存在,建立新檔案用於讀寫# file = open(‘test.txt‘, ‘a+‘)# 建立一個空檔案# file = open(‘text.txt‘, ‘a+‘)# file.write(‘aaa‘)# file.close()# file = open(‘text.txt‘)# print(file.read())# file.close()# ab+# 以二進位格式開啟一個檔案用於追加(讀寫),寫入內容為bytes# 如果該檔案已存在,檔案指標將會放在檔案的結尾,新的內容將會被寫入到已有內容之後# 如果該檔案不存在,建立新檔案用於讀寫# file = open(‘text.txt‘, ‘ab+‘)# file.write(b‘aaa‘)# file.close()# file = open(‘text.txt‘)# print(file.read())# file.close()
參考python open 關於讀、寫、追加的總結
Python open 讀和寫