[Python]本番環境でSyntaxError: Non-ASCII characterエラーが出た時の対処方法
Pythonを本番環境にアップして実行すると以下のようなエラーが発生しました。
SyntaxError: Non-ASCII character '\xe3' in file /home/django/xxx/xxx.py on line 23, but no encoding declared;
具体的にはさくらのVPSでPythonスクリプトを動かしたわけですが、元々日本語対応していないようでこのようなエラーが発生したようです。
このエラーに対する対処方法を紹介します。
CentOS7でロケールを変更する
解決方法はシンプルでした。そのままだと英語対応になっているので、それを使用可能なロケールに変更するだけです。
$sudo localectl set-locale LANG=ja_JP.utf-8 # 一度enterキーを押して実行 $source /etc/locale.conf
これでOKです。
実際に変更されたかどうか確認します。
$ localectl status System Locale: LANG=ja_JP.utf-8 VC Keymap: jp106 X11 Layout: jp
問題なく変更されています。