基于输入参数查找特定目录的有效方法?

时间:2016-06-23 19:59:48

标签: python directory os.walk pathname

给定两个参数123abc,我可以唯一地标识表单的目录:

\path\to\unique_123\directory_abc

然而,“唯一”和“目录”因文件夹而异。我想创建一个函数,func(123, abc)返回\path\to\unique_123\directory_abc

是否有比使用os.walk更有效的方法来实现这一目标?

2 个答案:

答案 0 :(得分:2)

可能你想要:

import glob

matches = glob.glob('**/*_%s/*_%s' % ('123', 'abc'), recursive=True)
assert len(matches) == 1
print(matches[0])

但如果你真的不需要它,请避免使用recursive,它通常会很慢!如果你真的需要它,我可能会向find(1)求助,这样做更好。

答案 1 :(得分:-1)

如果要查看文件夹中的目录,请使用:

os.listdir("/path/to/folder")

使用此功能,您可以获取子文件夹的名称。

如果你看到像unique_123这样的文件夹,你可以使用字符串上的`rstrip(" 1234567890")删除文件夹名称末尾的数字,假设文件夹名称以数字结尾,您需要替换它们。