使用Python将文件从目录复制到文件夹

使用Python将文件从目录复制到文件夹,python,Python,我有一个包含150个pdf文件的文件夹。 我还有一个200个名字的列表,这些名字对应于一些pdf文件。 即采用以下格式: Mark: 100900, 890210, 1212012 Sam: 210102, 203101, Matt: 123101, 120123, 123123, 123101 等等 我想为所有名称创建子目录,然后将pdf文件从原始文件夹复制到每个子目录中 到目前为止,我所做的是创建目录,但现在我正在尝试找出如何从一个单独的文件夹复制文件,如果有与主列表匹配的文件 imp

我有一个包含150个pdf文件的文件夹。 我还有一个200个名字的列表,这些名字对应于一些pdf文件。 即采用以下格式:

Mark: 100900, 890210, 1212012

Sam: 210102, 203101,

Matt: 123101, 120123, 123123, 123101
等等

我想为所有名称创建子目录,然后将pdf文件从原始文件夹复制到每个子目录中

到目前为止,我所做的是创建目录,但现在我正在尝试找出如何从一个单独的文件夹复制文件,如果有与主列表匹配的文件

import itertools
 import os

 dirs = ["Mark","Sam","Matt","..."]

 for item in dirs:
     os.makedirs(item)

我建议您使用,它对于处理目录中的文件很有用

代码如下所示:

 import shutil
 import os
 from os.path import exists
 from os import listdir

 nameslist = ["Mark: 100900, 890210, 1212012","Sam: 210102, 203101", "Matt: 123101, 120123, 123123, 123101"]

for item in nameslist: 
parts = item.split(': ')
names = parts[0]
numbers = parts[1].split(", ") #get lists from numbers
if not exists(names):  #create directories
    os.mkdir(names)

for f in listdir(os.getcwd()):  
    if f.endswith(".pdf"):
        if f.replace(".pdf",'') in numbers:
            shutil.copy(f, names)
希望这有帮助


如果.pdf文件不在python文件的目录中,请用该目录的路径替换os.getcwd()。答案是:所有pdf都有相同的命名格式吗?我想弄清楚的是,如果存在匹配项,如何复制文件,这不仅仅是如何复制文件。pdf文件的名称是可变的,有些有数字,有些有文字。您使用的是什么版本的python?Python 2还是3?也。这是使用什么操作系统/它的目标是什么?这会对答案产生相当大的影响