如何使用python删除csv文件中逗号前后的空格?

Posted

技术标签:

【中文标题】如何使用python删除csv文件中逗号前后的空格?【英文标题】:How do I remove spaced before and after commas in a csv file using python? 【发布时间】:2016-05-24 09:42:21 【问题描述】:

目前我的 csv 文件的一行如下所示:

314523、165538、76255、335416、416827 1250536:1 1744638:1 298526:1 1568238:1

我需要它看起来像这样:

314523,165538,76255,335416,416827 1250536:1 1744638:1 298526:1 1568238:1

我只想删除逗号前后的空格,并保留其他空格。

如何在 python 中做到这一点?

注意:我是python初学者

【问题讨论】:

【参考方案1】:

我建议使用替换功能。您输入要替换的模式。在您的示例中,模式是逗号空格(', ') 和空格逗号(' ,')。然后说出你想用(',') 替换模式的内容。

line=line.replace(', ', ',').replace(' ,',',')

【讨论】:

【参考方案2】:

对于字符串,您可以使用正则表达式:

import re
outputstring = re.sub(r'\s*,\s*', ',', inputstring)

这个正则表达式匹配逗号和逗号周围的空格,并用逗号替换它。对于文件,只需对每一行执行此操作即可。

【讨论】:

re.sub(r'\s*,\s*', ',', inputstring),因为您的正则表达式要求逗号前至少有一个空格。 你的正则表达式不正确。不会匹配foo, bar,也不会匹配foo ,bar

以上是关于如何使用python删除csv文件中逗号前后的空格?的主要内容,如果未能解决你的问题,请参考以下文章

CSV文件格式要求

打开用空格分隔符保存为逗号分隔符的CSV文件[关闭]

CSV文件格式介绍

使用 Python 从 CSV 中删除不需要的逗号

如何将同时具有逗号和空格分隔符的 CSV 文件转换为只有空格分隔符的 csv

如何用Java解析CSV文件