遍历文件夹下多层目录的所有文件并返回地址以及文件名

import os
def get_all_files(path):
    """
    获取指定路径下多层目录内的所有文件全路径及文件名称
    :param path: 需获取文件的指定路径
    :return: tuple<list<str>, list<str>>: 第一个元素是文件全路径列表,第二个元素是文件名列表
    """
    all_file_full_path_list = []
    all_file_name_list = []

    all_file_list = os.listdir(path)
    # 遍历该文件夹下的所有目录或文件
    for file in all_file_list:
        file_path = os.path.join(path, file)
        # 如果是文件夹,递归调用当前函数
        if os.path.isdir(file_path):
            sub_full_paths, sub_names = get_all_files(file_path)
            all_file_full_path_list.extend(sub_full_paths)
            all_file_name_list.extend(sub_names)
            # 如果不是文件夹,保存文件路径及文件名
        elif os.path.isfile(file_path):
            all_file_full_path_list.append(file_path)
            all_file_name_list.append(file)

    return all_file_full_path_list, all_file_name_list

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值