当前位置:  开发笔记 > 编程语言 > 正文

从目录中选择随机文件的最佳方法

如何解决《从目录中选择随机文件的最佳方法》经验,为你挑选了2个好方法。

从Python目录中选择随机文件的最佳方法是什么?

编辑:这是我正在做的事情:

import os
import random
import dircache

dir = 'some/directory'
filename = random.choice(dircache.listdir(dir))
path = os.path.join(dir, filename)

这特别糟糕,还是有更好的方法?



1> Yuval Adam..:
import os, random
random.choice(os.listdir("C:\\")) #change dir name to whatever

关于您编辑过的问题:首先,我假设您了解使用a的风险dircache,以及自2.6以来已弃用并在3.0中删除的事实.

其次,我不知道这里存在任何竞争条件.您的dircache对象基本上是不可变的(在缓存目录列表之后,它永远不会被再次读取),因此并发读取不会造成任何损害.

除此之外,我不明白为什么你看到这个解决方案有任何问题.没事.



2> mavnn..:

如果你想要包含目录,Yuval A的回答.除此以外:

import os, random

random.choice([x for x in os.listdir("C:\\") if os.path.isfile(os.path.join("C:\\", x))])

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有