首页 > 解决方案 > 使用 Python 删除文件夹中 2 或 3 个文件中的每一个

问题描述

我正在尝试做的是编写一个代码,该代码将删除文件夹中的 2 [或 3] 个文件中的一个。我已批量重命名文件名递增,如 0.jpg、1.jpg、2.jpg... n.jpg 等。对于两个文件中的每一个场景,我想到的是使用“if %2 == 0”之类的东西,但显然无法弄清楚如何从列表对象和我的文件夹中删除文件。

下面是一段非工作代码。我想,它不起作用,因为 file_name 是一个 str。

import os

os.chdir('path_to_my_folder')

for f in os.listdir():
    file_name, file_ext = os.path.splitext(f)
    print(file_name)

    if file_name%2 == 0:
      os.remove();

标签: pythonfile

解决方案


非常感谢您的回答!我已经修改了代码,现在看起来像这样;

import os

os.chdir('path_to_the_folder')

for f in os.listdir():
  name, ext = os.path.splitext(f)
  number = int(name)

if number % 2 == 0:
    os.remove()

它不会给出错误,但也不会从文件夹中删除/删除文件。最后我想要实现的是,每个可以被 2 整除的文件名都将被删除,因此只保留 1.jpg、3.jpg、5.jpg 等。

非常感谢您的宝贵时间。


推荐阅读