我想创建一个名称中包含“HICU-B”的所有子目录的列表。只有目录而不是文件(父目录中的某些文件也包含此文件)。
我想知道是否有办法将glob
和os.walk()
组合在一起来实现这一目标。或者,如果还有其他方法可以解决它。
这是我到目前为止的代码:
这将获取包含我想要的文本的文件和目录。
dirstext=glob.glob('/data01/HICU-B*')
这就是目录。
dirs=next(os.walk('/data01'))[1]
我无法弄清楚如何将它们组合起来只获取名称中带有“HICU-B”的目录而不是文件。
思想?
答案 0 :(得分:1)
在'/'
:
HICU-B*
dirstext = glob.glob('/data01/HICU-B*/')
这将仅返回名称以HICU-B*
开头的目录,而文件将被排除。
如果您需要walk
通过匹配的目录返回其所有子目录和文件,您可以这样做:
dirs = [list(i) for i in map(os.walk, dirstext)]