首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:理解os.listdir()方法

Python:理解os.listdir()方法
EN

Stack Overflow用户
提问于 2020-07-30 14:46:47
回答 2查看 547关注 0票数 0

我仍然是python的初学者,我想了解下面的代码是做什么的。

代码语言:javascript
复制
files = [f for f in os.listdir('E:/figs/test') if os.path.isfile(f)]
imgs = []

#read input
for f in files:
    if 'jpg' in f and 'background' not in f:
        imgs.append(cv2.imread(f))

print(imgs)

可以看到,我插入了一个指向包含图像的文件夹的路径。但是,当我打印内容时,它是空的。有没有人能解释一下原因和解决的方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-30 14:50:50

这是因为os.path.isfile(f)正在检查f是否是一个文件;但是fE:/figs/text下。你应该尝试以下几点:

代码语言:javascript
复制
main_dir = "E:/figs/test"
files = [f for f in os.listdir(main_dir) if os.path.isfile(os.path.join(main_dir, f))]

因为这将检查E:/figs/text下是否存在文件f

票数 1
EN

Stack Overflow用户

发布于 2020-07-30 15:09:48

python中的os.listdir()方法用于获取指定目录下所有文件和目录的列表。如果我们不指定任何目录,那么将返回当前工作目录中的文件和目录列表。

您必须在文件夹路径中使用//而不是/

如下所示:

代码语言:javascript
复制
files = [f for f in os.listdir('E://figs//test') if os.path.isfile(f)]

试试这个,它可能会运行

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63167612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档