
[code]

    import csv
    
    with open('datas.csv', 'r') as csv_file:
        csv_reader = csv.reader(csv_file)
    
        for line in csv_reader:
            print(line)
    
[/code]

これでファイルを入れていますが、コードをRUNしたら

[code]

    '2018\x94N12\x8c\x8e30\x93\xfa(\x93\xfa)'
    
[/code]

これは出ています。CSVファイルをENCODE方法がありますか？


CC BY-SA 4.0
2019-01-09T04:19:27.247
51830
2022-06-17T21:03:15.267
2019-01-09T06:02:13.650
2238
30379
question
python python2
Python 2.7 CSVファイルの日本語文字読み込み


ファイルを[open](https://docs.python.jp/2.7/library/csv.html#examples)する時にエンコーディングを指定してください。  
指定しない場合はOSシステムのデフォルトエンコーディングになって文字化けします。

[code]

    import csv
    import codecs
    
    # encodingを指定して読み込み
    with codecs.open('datas.csv', 'r', 'shift_jis') as csv_file:
    # 3.x以降ならば下記の記述も可能
    # with open('datas.csv', 'r', encoding="shift_jis") as csv_file:
        csv_reader = csv.reader(csv_file)
        for line in csv_reader:
            print(line)
    
[/code]


CC BY-SA 4.0
2019-01-09T04:38:06.090
51831
2019-01-09T05:19:53.543
2019-01-09T05:19:53.543
9820
9820
51830
answer


読んだ行をshift_jisからdecodeする方法です。

[code]

    import csv
    import codecs
    
    with open('datas.csv', 'r') as csv_file:
        csv_reader = csv.reader(csv_file)
        for line in csv_reader:
            line = [codecs.decode(s, 'shift_jis') for s in line] #読んだ行をshift_jisからデコード
            print(line)
            for s in line:
                print(s)
    
[/code]


CC BY-SA 4.0
2020-11-01T00:33:38.280
71636
2020-11-01T00:33:38.280
35558
51830
answer