如何使用python删除文件较小的文件夹

时间:2016-01-06 07:30:29

标签: python-2.7 python-os

我的文件夹包含一些文件,我需要删除文件较小的文件。我能够得到下面给出的代码的大小,但我很困惑,如何删除尺寸较小的文件

for root, dirs, files in os.walk(Path):
    for fn in files:
        path = os.path.join(root, fn)
        size = os.stat(path).st_size

1 个答案:

答案 0 :(得分:1)

如果您尝试识别每个文件夹中最小的文件,请在实际删除任何内容之前尝试以下代码。由于您的代码已经获得了文件大小,我稍微修改了它以捕获每个文件夹的字典中的文件名和大小。这样可以使用min()函数轻松返回最小大小的文件名。

for root, dirs, files in os.walk(stpath):
    d = {} # intialize dict
    for fn in files:
        path = os.path.join(root, fn)
        size = os.stat(path).st_size
        # capture file name and size for files in root
        d[fn] = size
    # some folders may be empty
    if d:
        # get the file name of the file with the smallest size
        smallestfile = min(d, key=d.get)
        print(root, smallestfile, d[smallestfile])

当然,我只打印每个文件夹中的最小文件。当您确认这是您想要的时,您可以改为删除它们。