如何解决有没有比列出目录中所有文件更快的方法来查找文件?
我的工作流程如下:
for i in some_list:
if i not in os.listdir(a_directory):
x = do_something(i)
x.to_pickle(f"{a_directory}/{i}")
os.listdir
昂贵,因为目录很大,并且它位于网络文件系统上。
我有多个工作人员从事这项工作,所以我不能只列出目录的内容一次。如果这样做,我的工人将重复他们的工作,而do_something
毕竟比os.listdir
贵。
是否有某种东西寻找特定文件的存在,而不是将所有文件都转储到python列表中以进行字符串匹配?
解决方法
根据以下问题,您可以直接检查文件是否存在:Check whether a file exists
从该答案开始:
import os.path
os.path.isfile(fname)
或者:
from pathlib import Path
my_file = Path("/path/to/file")
if my_file.is_file():
# file exists
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。