我有一个文件,该文件使用\x01作为字段定界符,并使用\x02\n作为行终止符。这是文件头的示例:

 #export_date\x01artist_id\x01name\x01is_actual_artist\x01view_url\x01artist_type_id\x02\n


当我使用csv.Sniffer()时,我得到以下信息:


  {'module':'csv','_name':'sniffed','lineterminator':'\ r \ n','quoting':0,'doc':None,'doublequote':False,'delimiter': '\ x01','quotechar':'“','skipinitialspace':False}


以下三个字段是什么意思:


报价
Quotechar
双引号


上面没有任何引号,因此我假定quotechar应该为空而不是双引号,但是对这三个字段的任何解释都很好。

另外,我还尝试了其他一些文件,无论该文件是否带引号,它似乎总是能提供这三个字段的确切输出。

最佳答案

检查文件


方言双引号



  控制出现在字段中的quotechar实例本身应如何被引用。当为True时,字符加倍。如果为False,则将escapechar用作quotechar的前缀。默认为True。



方言



  一个单字符字符串,用于引用包含特殊字符(例如定界符或quotechar)或包含换行符的字段。默认为“”。



方言引用



  控制引号何时由作者生成并由读者识别。它可以采用任何QUOTE_ *常量(请参见模块内容),并且默认为QUOTE_MINIMAL。

关于python - 读取csv.Sniffer()的输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53838501/

10-13 04:55