首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >读取csv.Sniffer()的输出

读取csv.Sniffer()的输出
EN

Stack Overflow用户
提问于 2018-12-18 17:48:12
回答 2查看 244关注 0票数 1

我有一个文件,它使用\x01作为行结束符的字段分隔符和\x02\n。以下是文件头的一个示例:

代码语言:javascript
复制
 #export_date\x01artist_id\x01name\x01is_actual_artist\x01view_url\x01artist_type_id\x02\n

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

{‘模块’:'csv','_name':‘嗅探’,‘line端子’:'\r\n',‘引号’:0,'doc':None,‘双引号’:False,‘False’:‘\x 01’,'quotechar':‘

以下三个领域意味着什么:

  • 引文
  • 商特查
  • 双引号

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

另外,我尝试过其他几个文件,它似乎总是给出这三个字段的确切输出,不管该文件是否引用。

EN

回答 2

Stack Overflow用户

发布于 2018-12-18 18:05:06

检查文件

  • Dialect.doublequote

控制如何引用字段中出现的验证符实例。如果是真的,角色就加倍了。如果为False,则将转义符用作商查尔的前缀。它默认为True。

  • Dialect.quotechar

一种单字符字符串,用于引用包含特殊字符的字段,如分隔符或勘探器,或包含新行字符的字段。默认为“”。

  • Dialect.quoting

控制何时引号应由作者产生,并由读者认可。它可以接受任何QUOTE_*常量(参见Module ),并默认为QUOTE_MINIMAL。

票数 0
EN

Stack Overflow用户

发布于 2018-12-18 18:05:24

这些字段包含在方言与Paramteres文档格式中。

  • 引文:控制引文由作者生成并由读者识别的时间。它可以接受任何QUOTE_*常量(参见Module ),并默认为QUOTE_MINIMAL。
  • 双引号:控制如何引用字段中出现的验证符实例。如果是真的,角色就加倍了。如果为False,则将转义符用作商查尔的前缀。它默认为True。在输出时,如果双引号为False,且未设置转义符,则如果在字段中找到一个商炭,则会引发错误。
  • 勘探器:一种单字符字符串,用于引用包含特殊字符的字段,如分隔符或勘误符,或包含新行字符的字段。默认为“”。

关于:

上面没有任何引文,所以我假设该项应该是空的,而不是双引号,但是对这三个字段的任何解释都是很好的。

CPython csv.py库中有一条评论说:

代码语言:javascript
复制
# _csv.reader won't accept a quotechar of ''`

来源:https://github.com/python/cpython/blob/2ef69a1d45de8aa41c45d32d9ee1ff227bb1a566/Lib/csv.py#L198

在您的例子中,如果没有引用,您可能希望使用csv.QUOTE_NONE。嗅探器可能没能帮你弄明白。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53838501

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档