如何从奇怪的学校Windows电脑读取.csv文件到Python?
我在学校的Windows电脑上下载了Anaconda,并在使用Python。我想读取一个.csv文件。
这个文件在我的Mac上可以正常打开和读取,文件就在桌面上。它的大小是167MB,不算太大。编码是UTF 8 sig。
我尝试用这个路径来加载文件:
df = pd.read\_csv('\storage-universityname\student$\studentusername1\Desktop\filename.csv', encoding='utf-8-sig', dtype=str)
每次我都收到这个错误信息:
FileNotFoundError: [Errno 2] 没有这样的文件或目录: '\storage-universityname\student$\studentusername1\Desktop\filename.csv'
我尝试过修改路径,比如把所有的反斜杠换成正斜杠,或者用不同的路径组合,比如:
\student$\studentusername1\Desktop\filename.csv
\studentusername1\Desktop\filename.csv
\Desktop\filename.csv
C:\\storage-universityname\student$\studentusername1\Desktop\filename.csv
我甚至试过用一个脚本(现在记不清了)来告诉我这个文件的路径,并用那个路径,但还是出现了同样的错误信息。文件的编码是正确的。
我在我的Mac上用这个脚本读取文件已经很多次了,对这个过程很熟悉。难道是因为我的大学电脑是个复杂的学生用户网络,所以读取方式不一样吗?
有没有人知道我该如何读取这个文件?
2 个回答
0
path = '\storage-universityname\student$\studentusername1\Desktop\filename.csv', encoding='utf-8-sig'
看看系统是如何识别你给定的路径的
print(path)
\storage-universityname\student$\studentusername1\Desktopilename.csv
这是输出的结果,因为反斜杠“\”被用来转义一些有特殊含义的字符,比如“\n”表示换行符,而我在你的路径中看到了“\f”。
为了避免这个问题,只需使用 r'',这样反斜杠就会被当作普通字符处理,而不是转义字符。
path = r'\storage-universityname\student$\studentusername1\Desktop\filename.csv'
df = pd.read_csv(path)
或者在你的原始路径前加上“r”
df = pd.read_csv(r'\storage-universityname\student$\studentusername1\Desktop\filename.csv', encoding='utf-8-sig', dtype=str)
0
试着从反方向入手,使用Python创建一个名为test.csv的文件,放在你的文件旁边。
如果你成功创建了这个文件,就去读取一下test.csv。
这样你就可以检查一下当前用户是否有权限访问这个路径。