【问题标题】:How do I remove spaced before and after commas in a csv file using python?如何使用python删除csv文件中逗号前后的空格?
【发布时间】: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初学者

【问题讨论】:

    标签: python regex csv


    【解决方案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
      猜你喜欢
      • 2019-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多