Python gets the absolute path of all file names under the specified file

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)

Because I only need all the file paths ending in .h and .c, I made a judgment here

The latter is for my own use according to actual needs,

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

 

Guess you like

Origin blog.csdn.net/yangkunhenry/article/details/103779063