【Python3.2を使用】
encoding
に引数を指定しない場合open
、ファイルは を使用して開かれますlocale.getpreferredencoding()
。たとえば、私の Windows マシンでは、 を使用するたびに、 を使用open('abc.txt')
してデコードされcp1252
ます。
すべての入力ファイルをutf-8
. encoding = 'utf-8'
明らかに、すべてのopen
関数呼び出しに追加できます。または、より良いのはencoding = MY_PROJECT_DEFAULT_ENCODING
、定数がどこかのグローバルレベルで定義されている場合です。
open
しかし、「デフォルト」のエンコーディングを変更することで、すべての呼び出しを編集しないようにするクリーンな方法があるかどうか疑問に思っていました。ロケールを変更することで変更できるものですか?または、ロケール内のパラメーターを変更することによってですか? Python のマニュアルに従おうとしましたが、これがどのように使用されることになっているのか理解できませんでした。
ありがとう!