[英]Why would Python think a file doesn't exist when I think it does?
我正在尝试导入一些文件以进行打印,直到我将程序移至之前的目录之前,一切都进行得很好。 似乎有问题的相关代码如下:
import os
import pandas as pd
path = os.getcwd() + '/spectrum_scan/'
files = os.listdir(path)
dframefiles = pd.DataFrame(files)
up = pd.read_csv(dframefiles.ix[i][0])
如果我直接在外壳os.path.exists(path)
键入,它将返回True
。
目录spectrum_scan
的第一个文件是foo.csv
。
当我输入os.path.exists(path + 'foo.csv')
它返回True
但是os.path.isfile('foo.csv')
返回False
。
另外,询问files
和dframefiles
返回所有内容,但是在运行代码时出现Exception: File foo.csv does not exist
。
有什么明显的我想念的东西吗?
您正在使用os.listdir()
,该os.listdir()
返回不带路径的文件名。 您需要为这些添加路径:
files = [os.path.join(path, f) for f in os.listdir(path)]
否则,python将尝试在当前目录中查找'foo.csv'
,而不是在文件实际所在的spectrum_scan
子目录中查找。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.