Python:根据文件名的一部分将文件移动到文件夹

时间:2021-02-22 18:23:21

标签: python

文件夹包含文件

  1. 文件名one_partone_1
  2. 文件名one_partone_2
  3. 文件名one_partone_3
  4. 文件名one_parttwo_1
  5. 文件名one_parttwo_2
  6. 文件名two_1
  7. 文件名two_2

现在我想将 (1,2,3)(4,5)(6,7) 移动到每个文件夹。必须根据文件名创建文件夹并移动相应的文件。 以下代码有效,但文件名在字符范围 x:y 内,但在文件名示例上方无效。因此需要对文件名进行一些修改。谢谢。

     import os, shutil
        os.chdir("<abs path to desktop>")
        for f in os.listdir("folder"):
            folderName = f[0:10]
            if not os.path.exists(folderName):
                os.mkdir(folderName)
                shutil.copy(os.path.join('folder', f), folderName)
            else:
                shutil.copy(os.path.join('folder', f), folderName)

1 个答案:

答案 0 :(得分:0)

假设文件总是以“_number”结尾

     import os, shutil
        os.chdir("<abs path to desktop>")
        for f in os.listdir("folder"):
            folderName = f[0:-2]
            if not os.path.exists(folderName):
                os.mkdir(folderName)
                shutil.copy(os.path.join('folder', f), folderName)
            else:
                shutil.copy(os.path.join('folder', f), folderName)




相关问题