我试图将CSV文件读入Python (Spyder),但我一直得到一个错误。我的代码:

import csv

data = open("C:\Users\miche\Documents\school\jaar2\MIK\2.6\vektis_agb_zorgverlener")
data = csv.reader(data)
print(data)

我得到以下错误:

SyntaxError (unicode错误)“unicodesescape”编解码器不能解码字节 在位置2-3:截断\UXXXXXXXX转义

我试过把\换成\\或者/,还试过在“C”前面加一个r。,但所有这些都不起作用。


当前回答

它通过中和“by f = open(' f:\\file.csv')”来为我工作。

其他回答

发生此错误是因为您正在使用普通字符串作为路径。您可以使用以下三种解决方案之一来解决问题:

1:把r放在普通字符串前面。它将普通字符串转换为原始字符串:

pandas.read_csv(r"C:\Users\DeePak\Desktop\myac.csv")

2:

pandas.read_csv("C:/Users/DeePak/Desktop/myac.csv")

3:

pandas.read_csv("C:\\Users\\DeePak\\Desktop\\myac.csv")

双\应该适用于Windows,但你仍然需要照顾你在路径中提到的文件夹。它们(除了文件名)都必须存在。否则您将得到一个错误。

在字符串前加上r。它将普通字符串转换为原始字符串。

你可以把r放在你实际路径的字符串前面,它表示一个原始字符串。例如:

data = open(r"C:\Users\miche\Documents\school\jaar2\MIK\2.6\vektis_agb_zorgverlener")

字符串中的第一个反斜杠将被解释为一个特殊字符。事实上,因为它后面跟着一个“U”,所以它被解释为Unicode码位的开始。

要解决这个问题,需要转义字符串中的反斜杠。直接的方法是通过双反斜杠:

data = open("C:\\Users\\miche\\Documents\\school\\jaar2\\MIK\\2.6\\vektis_agb_zorgverlener")

如果你不想在字符串中转义反斜杠,并且你不需要在字符串中使用转义码或引号,你可以使用“原始”字符串,在它前面使用“r”,如下所示:

data = open(r"C:\Users\miche\Documents\school\jaar2\MIK\2.6\vektis_agb_zorgverlener")