Python (Jupyter)でファイルが読み込めない問題
エラーの内容
WindowsでPython (Jupyter)を使っている場合、ファイルを読み込む際に次のようなエラーが出ることがあります。
UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 0: illegal multibyte sequence
これは例えばutf-8のファイルを開くときに起きることがありますが、Windowsのデフォルトの文字コードではデコードできないというエラーです。
対処法
その対処法としてはcodecsを使って、encodingを指定して開くのが有効のようです。
# coding: utf-8
import codecs
f = codecs.open('jikken.txt', mode='a', encoding='utf-8') # 追加書き込みモードで開く
f.write("This is a pen.") #文字列をファイルに書き込む
f.close() #ファイルを閉じる