繁体   English   中英

为什么Python在我认为文件不存在时会认为该文件不存在?

[英]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

另外,询问filesdframefiles返回所有内容,但是在运行代码时出现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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM