#!/usr/bin/env python # -*- mode: Python; coding: UTF-8 -*- """ Help test the csv sniffer bug """ from __future__ import print_function import csv data = [['id', 'groupe', 'description_courte', 'description'], ['273', 'MVREGR1', 'ByEuPo', 'Baryton "Euphonium" populaire'], ] #csvdata = '''id\tgroupe\tdescription_courte\tdescription #273\tMVREGR1\tByEuPo\t"Baryton ""Euphonium"" populaire"''' def create_file(): with open('data.csv', 'wb') as f: writer = csv.writer(f, dialect=csv.excel_tab) test_data = [data[0]] test_data.append(data[-1]) writer.writerows(test_data) def sniff_file(): sniffer = csv.Sniffer() with open('data.csv', 'rb') as f: dialect = sniffer.sniff(f.read()) if dialect.delimiter != csv.excel_tab.delimiter: print("dialect delimiter is incorrect: '{}' chr({})".format(dialect.delimiter, ord(dialect.delimiter))) if __name__ == '__main__': create_file() sniff_file()