Python 文件查找

  1. 利用递归寻找文件夹中所有的文件,并将这些文件的绝对路径添加到一个列表中返回(面试题)。
import os


def find_file(path, file_path=[]):
    file_dir = os.listdir(path)
    file_dir_abspath = [os.path.join(path, i) for i in file_dir]
    for j in file_dir_abspath:
        if os.path.isfile(j):
            file_path.append(j)
        else:
            find_file(j)
    return file_path

print(find_file(r'D:\Projects\Python'))
  1. 计算一个文件夹下所有文件的大小。这个文件夹下面还有文件夹,不用walk
import os

def dir_size(path):
    size = 0
    file_dir = os.listdir(path)
    abs_path = [os.path.join(path, i) for i in file_dir]
    for j in abs_path:
        if os.path.isfile(j):
            res = os.path.getsize(j)
            size += res
        else:
            res = dir_size(j)
            size += res
    return size

print(dir_size(r'D:\Projects\Python'))

版权声明:本文为m0_57787326原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。