我需要阅读和编辑一些文件,问题是我大致知道这些文件在哪里,但不完全知道。
所以所有的文件在不同的目录下都被称为qqtest.py。
我知道父目录被称为:
mdcArray = ['MDC0021','MDC0022','MDC0036','MDC0055','MDC0057'
'MDC0059','MDC0061','MDC0062','MDC0063','MDC0065'
'MDC0066','MDC0086','MDC0095','MDC0098','MDC0106'
'MDC0110','MDC0113','MDC0114','MDC0115','MDC0121'
'MDC0126','MDC0128','MDC0135','MDC0141','MDC0143'
'MDC0153','MDC0155','MDC0158']
但是在那之后还有另一个未知的子目录包含qqtest.txt
所以我需要从/mdc[number]/unknowndir/qqtest.txt中读取qqtest.txt
所以通配符在python中读取文件的方式与在bash中类似
即
/MDC0022/*/QqTest.txt
最佳答案
您可以使用一个名为glob
的python模块来执行此操作。它支持unix风格的路径名模式扩展。
import glob
glob.glob("/MDC0022/*/QqTest.txt")
如果要对列表中的所有项目执行此操作,可以尝试此操作。
for item in mdcArray:
required_files = glob.glob("{0}/*/QqTest.txt".format(item))
# process files here
Glob documentation