使用Python 2.7从数据中删除反斜杠

时间:2017-02-23 16:45:09

标签: python python-2.7 csv

免责声明:我有大约3个月的编程经验......对于任何愚蠢的问题,请提前道歉。

我有一个9GB的CSV文件,我试图使用Python 2.7清理

我需要移除/替换/剥离你想要调用它的所有内容...." \"分散在整个数据中。

这是我到目前为止所提出的:

#Python 2.7
csvfileIn = open("dataexample.csv", "r")
csvOut = open("dataexample2.csv", "w")
for i, row in enumerate(csvfileIn.readline()):
    row = row.replace("\"", "")
    csvOut.write(row)
csvOut.close()

这不会像我希望的那样遍历CSV文件。 我得到了使用readline()而不是readlines()的建议,因为文件太大了。

我会附上示例数据文件,但我没有足够的街头信誉来附加文件。我想我发布的最后一个问题是愚蠢的,所以我失去了一些代表点。 screenshot of example data

感谢您的帮助!

更新/修正代码

#Python 2.7
csvfileIn = open("dataexample.csv", "r")
csvOut = open("dataexample2.csv", "w")


for i, row in enumerate(csvfileIn):
    row = row.replace("\\", "")
    csvOut.write(row)


csvOut.close()
csvfileIn.close()

2 个答案:

答案 0 :(得分:4)

1) 替换row = row.replace("\"", "")row = row.replace("\\", "")

你应该逃避反斜杠

2)根据评论Rawing的建议,将enumerate(csvfileIn.readline())替换为enumerate(csvfileIn)

或者,如果您的代码中从未使用i,则只需按for row in csvfileIn:

重复该文件

最后,不要忘记关闭csvfileIn

答案 1 :(得分:2)

使用双反斜杠

row.replace("\\", "")

\\双反斜杠表示字符串

中的反斜杠

char之前的单反斜杠表示特殊字符ex:\ n - 新行