情報工学科の大学生が学ぶこと

今学んでいることが何に結びつくのかを理解し、効率的に実践的な知識を身につける術を提供します。

【Python csv】UnicodeDecodeError 解決法

f:id:hatanaman2:20180911165946p:plain

csvを読み込もうとしてエラー発生

 with open(filepath, 'r') as f:
        reader = csv.reader(f)
        for row in reader:
            print(row)

を実行すると以下の「UnicodeDecodeError」

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x91 in position 15: invalid start byte

文字コード確認

nkf --guess filepath

=>Shift_JIS (CRLF) codecを利用

 import codecs

 with codecs.open(filepath, 'r', 'shift_jis') as f:
        reader = csv.reader(f)
        for row in reader:
            print(row)