gpt4 book ai didi

python - 如何读取带有“?

转载 作者:太空狗 更新时间:2023-10-29 22:10:09 27 4
gpt4 key购买 nike

一个简单的 CSV 行可以使用字符串拆分函数来吐出。但是有些行可能有 ",例如

"good,morning", 100, 300, "1998,5,3"

因此直接使用string split并不能解决问题。

我的解决方案是首先使用 , 拆分行,然后在字符串的开头或结尾处将字符串与 " 组合。

这个问题的最佳实践是什么?

如果有用于此的 Python 或 F# 代码片段,我很感兴趣。

编辑:我对实现细节更感兴趣,而不是使用库。

最佳答案

有一个 csv处理此问题的 Python 模块。

编辑:此任务属于“构建词法分析器”类别。执行此类任务的标准方法是构建状态机(或使用将为您完成的词法分析器库/框架。)

这个任务的状态机可能只需要两个状态:

  • 初始一个,它读取除逗号和换行符之外的每个字符作为字段的一部分(异常(exception):前导和尾随空格),逗号作为字段分隔符,换行符作为记录分隔符。当它遇到开头引号时,它会进入
  • read-quoted-field 状态,其中不包括引号的每个字符(包括逗号和换行符)都被视为字段的一部分,引号后面没有引号意味着 read-quoted-field 结束(回到初始状态),引号后跟引号被视为单引号(转义引号)。

顺便说一句,您的串联解决方案将在 "Field1","Field2""Field1"",""Field2" 上中断。

关于python - 如何读取带有“?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2139750/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com