一段时间以来,我一直在试图找出如何检查给定目录中是否存在.pkl文件。我检查了网站,可以找到查找目录中是否有文件并将其列出的方法,但是我只想检查它们是否存在。
在我的目录中,总共有7个.pkl文件,当我创建一个.pkl文件时,就会立即创建其他文件,以便检查其中七个文件是否存在,足以检查一个文件是否存在。因此,我想检查是否有任何.pkl文件。
如果我这样做,这是可行的:
os.path.exists('folder1/folder2/filename.pkl')
但是我不得不写一个文件名。我想这样做而无需搜索特定文件。我也尝试过
os.path.exists('folder1/folder2/*.pkl')
,
但是它也不起作用,因为我没有名为* .pkl的文件。
答案 0 :(得分:2)
您可以使用python模块glob
(https://docs.python.org/3/library/glob.html)
具体地说,glob.glob('folder1/folder2/*.pkl')
将返回folder2中所有.pkl文件的列表。
答案 1 :(得分:1)
您可以使用:
for dir_path, dir_names, file_names in os.walk(search_dir):
# Go over all files and folders
for file_name in file_names:
if (file_name.endswith(".pkl")):
# do something like break after the first one you find
注意:如果您还想搜索带有子目录的整个目录,则可以使用
如果只想搜索一个目录,则可以在os.listdir(path)上运行“ for”