Python では、CSVを読む時、カンマ区切りの後に空白があると読込んだ後に列がズレたり、
(最終列の前のカンマの後に空白が存在して最終列がダブルクォートで括って改行が含まれていると、
次の行と一緒に列の認識が崩れる!)
想定しない障害になります。
カンマ区切りの後の空白をスキップさせる指定をすることで、想定しないエラーを回避できます。
skipinitialspace=True
# -*- coding: UTF-8 -*- import csv import codecs with codecs.open('test.csv', 'r', 'utf8') as f: reader = csv.reader(f, skipinitialspace=True) for row in reader: print(row)
Python pandas で読込む時の指定
# -*- coding: UTF-8 -*- import pandas df = pandas.read_csv('test.csv', skipinitialspace=True) print(df)
同じものをJavaで読込む時、
yipuran-csv
GitHub - yipuran/yipuran-csv: Java CSV read and write
で、読み込むなら、カンマ前後に空白文字があるからといって、
特別な指定をすることなく読込むことができます。