使用Python删除文件中字符串中的额外空格

时间:2016-10-25 18:04:29

标签: python python-3.x removing-whitespace

我有一个大型CSV文件,其中包含如下列表:

DATA1;数据2;数据3; DATA4

数据4中的

内容如下:Bad String

data4中的内容应如下所示:Correct String

迭代data4中的每一行以删除这些额外空格的最佳方法是什么?我知道我必须以某种方式访问​​data4的位置,这将是[3],但我不知道如何在实现额外空间删除的同时为每一行执行此操作。

提前致谢!

3 个答案:

答案 0 :(得分:0)

你试过正则表达式吗?

import re

bad_string = "This   is     a bad    string"
good_string = re.sub('\s+', ' ', bad_string)  # replace multiple spaces with single

或者,如果您不想使用外部库,则可以拆分空白并使用str.join()

bad_string = "This   is     a bad    string"
good_string = " ".join(bad_string.split())

答案 1 :(得分:0)

我想你的意思是在逗号后面有一个额外的标签:

str1 = "; -77.1565506 38.8912708,\t -77.1552148 38.8913919,\t -77.1549278 38.8921727, -77.1557808 38.8916717, -77.1565506 38.8912708"
print(str1)

删除标签页,使用str.replace(old, new[, max])

str1_notab = str1.replace('\t','')
print(str1_notab)

答案 2 :(得分:0)

您可以使用以下内容删除多余的空格,标签,新行:

original_string = 'This   \t\n contains \n \t   extra  spaces.' 
clean_string = ' '.join(original_string.split())
print(clean_string)

# Output: 'This contains extra spaces.'