我需要阅读和编辑一些文件,问题是我大致知道这些文件在哪里,但不完全知道。
所以所有的文件在不同的目录下都被称为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

10-08 06:40