python指定したファイルの下にあるすべてのファイル名の絶対パスを取得

1269 ワード

import os
result = []
def get_all(path):
    dir_list = os.listdir(path)
    for i in dir_list:
        sub_dir = os.path.join(path,i)
        if os.path.isdir(sub_dir):
            get_all(sub_dir)
        else:
            result.append(sub_dir)

get_all(r"D:\remote_git\F113\F_000")
for ele in result:
    str_len = len(ele)
    beg = str_len - 2
    end = str_len
    if ele.find('.h',beg,end) != -1 or ele.find('.c',beg,end) != -1:
        print(ele)

すべてを取得する必要があるからです.h和.c末尾のファイルパスなので、ここで判断しました
後ろは私が実際に必要に応じて自分で使ったもので、
import os
result = []
def get_all(path):
    dir_list = os.listdir(path)
    for i in dir_list:
        sub_dir = os.path.join(path,i)
        if os.path.isdir(sub_dir):
            get_all(sub_dir)
        else:
            result.append(sub_dir)

get_all(r"D:\remote_git\T70_12_23\T70_000")
front_str = ""
for ele in result:
    str_len = len(ele)
    beg = str_len - 2
    end = str_len
    if ele.find('.h',beg,end) != -1:
        des_pos = ele.rfind('\\')
        des_str = "-i\"" + ele[0:des_pos] + "\""
        if des_str != front_str:
            print(des_str)
            front_str=des_str