質問: f.read() ~/anaconda3/lib/python3.6/encodings/ascii.py in decode(self, input, final) 24 class IncrementalDecoder(codecs.IncrementalDecoder): 25 def decode(self, input, final=False): ---> 26 return codecs.ascii_decode(input, self.errors)[0] 27 28 class StreamWriter(Codec,codecs.StreamWriter): UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128) ■補足 pythonのデフォルトエンコーディングとファイルのエンコーディングを調べましたが、どちらもUTF-8でした。 ``` import sys print(sys.getdefaultencoding()) ``` 上記の実行結果 utf-8 ``` $ nkf -g test.txt UTF-8 ``` test.txtの内容 ``` あ い ``` 実行環境ですが、次のとおりです。 Python 3.6.3 |Anaconda custom (64-bit) ubuntu 16.04.3 LTS (macにDockerを入れて使っています。) 他の開発環境では動いたので、環境の問題だと思っていますが、確認するところが分からず、お手上げです。 よろしくお願いします。
回答: `f = open( 'test.txt', 'r', encoding='utf-8')`のようにエンコーディングを指定してファイルを開いてください。 参考:16.2.1.1. テキスト I/O