Python - to_csv
Posted
技术标签:
【中文标题】Python - to_csv【英文标题】: 【发布时间】:2018-01-02 20:19:58 【问题描述】:我目前正在尝试使用 to_csv 将数据帧写入 csv。数据的输入和输出如下。如何编写 to_csv 以确保带逗号的字段仍被双引号引起来,但带有 Katie 的行不会得到额外的双引号?
输入:
Title
Johnny,Appleseed
Lauren,Appleseed
Katie_"Appleseed"
输出:
Title
"Johnny,Appleseed"
"Lauren,Appleseed"
Katie_""Appleseed""
代码
df.to_csv(r"filelocation", sep=',')
【问题讨论】:
CSV 编码器通常足够聪明,可以处理随机垃圾,它们肯定不适合您吗?将您的“输入”发布为更合乎逻辑的表格(除非每行上的字符串就是这样);不确定它与 Pandas 拥有的数据框有何关联 它转义了Katie_"Appleseed"
中的引号,你为什么要阻止这个?
@HaleemurAli 我想防止这种情况发生,因为 csv 然后进入一个表格,我需要保留它的原始格式而不更改文本名称
啊,那么正如@AntonvBR 建议的那样,只需使用不同的引号字符即可。但是转义引号字符是分隔文本文件中的标准行为。
@AntonvBR 如果我使用quotechar="'"
,那么文件将不会在逗号分隔符周围有双引号
【参考方案1】:
用双引号转义引号是the CSV standard:的一部分
"7. 如果使用双引号将字段括起来,则使用双引号 出现在字段中必须通过在它前面加上 另一个双引号。”
【讨论】:
以上是关于Python - to_csv的主要内容,如果未能解决你的问题,请参考以下文章