欢迎访问宙启技术站
智能推送

如何使用nsmallest()函数在Python中找到最小的n个文件大小

发布时间:2024-01-03 00:15:52

在Python中,可以使用os模块来获取文件大小,然后使用nsmallest()函数从文件大小列表中找到最小的n个文件大小。

下面是一个使用nsmallest()函数找到最小的n个文件大小的例子:

import os
import heapq

def find_smallest_files(folder_path, n):
    file_sizes = []  # 用来存储文件大小的列表

    # 遍历文件夹中的所有文件
    for root, dirs, files in os.walk(folder_path):
        for file in files:
            file_path = os.path.join(root, file)
            file_size = os.path.getsize(file_path)
            file_sizes.append(file_size)

    smallest_files = heapq.nsmallest(n, file_sizes)  # 找到最小的n个文件大小

    # 输出最小的n个文件大小
    for size in smallest_files:
        print(f"File size: {size} bytes")

# 调用示例
folder_path = '/path/to/folder'  # 文件夹的路径
n = 5  # 需要找到的最小文件数
find_smallest_files(folder_path, n)

在这个例子中,我们首先定义了一个空的列表file_sizes来存储文件大小。然后,使用os.walk()函数遍历文件夹中的所有文件,并使用os.path.getsize()函数获取每个文件的大小,并将其添加到file_sizes列表中。

接下来,我们使用heapq.nsmallest()函数从file_sizes列表中找到最小的n个文件大小,并将结果存储在smallest_files变量中。

最后,我们使用一个循环来输出最小的n个文件大小。

请注意,你需要将'/path/to/folder'替换为你需要查找文件的文件夹路径,并将5替换为你需要找到的最小文件数。