pandas保存字符串时如何不多添加引号?

您所在的位置:网站首页 vscode给每一行加引号 pandas保存字符串时如何不多添加引号?

pandas保存字符串时如何不多添加引号?

2023-06-14 05:44| 来源: 网络整理| 查看: 265

在Pandas中保存CSV文件时,默认会使用引号来表示字符串的开始和结束,这会导致字符串中原有的引号变成双引号,改变了原始字符串的内容。如果希望保存CSV文件时不改变字符串的内容,可以采取以下几个措施:

1. 保存CSV时指定quote=None 在调用`.to_csv()`方法保存CSV文件时,将`quote=None`指定为参数,这样在保存CSV文件时不会添加任何引号:

python df.to_csv('data.csv', sep='\t', index=False, quote=None)

2. 指定转义字符escapechar 对于包含CSV分隔符(默认为`,)的字符串,指定escapechar='\'`参数,这会在特殊字符前添加转义符`\`:

python  df.to_csv('data.csv', sep='\t', index=False, escapechar='\\')

3. 保存CSV前替换字符串中的引号 对于包含引号的字符串,可以在保存CSV文件前使用`str.replace()`方法替换引号:

python df['string'] = df['string'].str.replace('"', '') df.to_csv('data.csv', sep='\t', index=False) 

4. 读取CSV时也指定quote=None 在读取CSV文件时,同样指定`quote=None`,这样在读取过程中也不会将引号解释为字符串的开始/结束标记:

python df = pd.read_csv('data.csv', sep='\t', quote=None)

举个例子:

python df = pd.DataFrame({'string': ['this is a "string"', 'another \'string\'']}) # Quote=None,不添加引号 df.to_csv('data.csv', sep='\t', index=False, quote=None)    # 读取时也指定Quote=None df = pd.read_csv('data.csv', sep='\t', quote=None)   print(df)      string   0  this is a "string"     1  another \'string\'

可以看到,CSV文件保存和读取时,字符串内容没有任何改变。  



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3