Pythonでファイルを読み込む際、特にWindows環境下では、UnicodeDecodeError
が発生することがあります。このエラーは、ファイルの文字コードとPythonの読み込み時の文字コードが一致しない場合に発生します。
文字コードとは?
文字コードは、それぞれの文字に割り振られた識別用のコードのことで、コンピュータで文字を表現するときに必要になってきます。コンピュータやファイルの種類によって文字コードは変わってくるので、ファイルの読み込みや、ファイルの保存の際に意識しておく必要があります。
UnicodeDecodeErrorを回避する方法
encodingを指定する
ファイルを読み込む際に、関数の引数にencodingを指定すると良いでしょう。
file_data = open(file, 'r', encoding="utf-8")
プログラムの文字コードを変える
Pythonのプログラムファイルの文字コードの設定を変える場合は、プログラムファイルの冒頭に次の記述を記載します。
# -*- coding: utf-8 -*-
以上、PythonでUnicodeDecodeError
を回避する方法について解説しました。このエラーは、読み込み元と、読み込むプログラムの文字コードの違いなどで発生します。UnicodeDecodeError
を回避する方法として、encodingを指定する方法や、プログラムの文字コードを変える方法がありました。