with open(f_name, 'w', encoding='utf-8') as f_out:encoding是指文字檔的編碼。如果要讀寫utf-8的文字檔,編碼會是以下兩者之一:
....
....
- encoding='utf-8':純utf-8文字檔 (常見於linux)
- encoding='utf-8-sig':檔案開頭有加BOM (常見於Windows上的utf-8檔)
encoding如果不指定,會是作業系統的預設選項 (使用者應該可以改,但我沒試過)。如果在linux系列,多半會是utf-8 (有不是的嗎?);如果在較舊的Windows,則是 big5/cp950 。當我們的程式碼可能在多個平台執行時,最好把encoding作明確的設定,免得在讀寫共用的文字檔案時,因為encoding而發生執行錯誤。
沒有留言:
張貼留言