如何使用 python 删除较小文件夹中的文件
How I can delete a file in a folder which is smaller in size using python
我的文件夹包含一些文件,我需要删除较小的文件。我能够得到下面给出的代码的大小,但我很困惑如何删除尺寸较小的文件
for root, dirs, files in os.walk(Path):
for fn in files:
path = os.path.join(root, fn)
size = os.stat(path).st_size
如果您试图找出每个文件夹中大小最小的文件,请在实际删除任何内容之前尝试使用以下代码。由于您的代码已经获取了文件大小,因此我对其进行了一些修改,以在字典中为每个文件夹捕获文件名和大小。这使得使用 min() 函数 return 具有最小大小的文件名变得容易。
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])
当然,我只打印了每个文件夹中最小的文件。当您确认这是您想要的时,您可以改为删除它们。
我的文件夹包含一些文件,我需要删除较小的文件。我能够得到下面给出的代码的大小,但我很困惑如何删除尺寸较小的文件
for root, dirs, files in os.walk(Path):
for fn in files:
path = os.path.join(root, fn)
size = os.stat(path).st_size
如果您试图找出每个文件夹中大小最小的文件,请在实际删除任何内容之前尝试使用以下代码。由于您的代码已经获取了文件大小,因此我对其进行了一些修改,以在字典中为每个文件夹捕获文件名和大小。这使得使用 min() 函数 return 具有最小大小的文件名变得容易。
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])
当然,我只打印了每个文件夹中最小的文件。当您确认这是您想要的时,您可以改为删除它们。