在 python 中将具有特定名称的文件从一个文件夹复制到另一个文件夹

Copy file with specific name from one folder to another in python

我正在尝试将特定文件从一个文件夹复制到另一个文件夹,但出现错误,我不明白为什么:

import os
import shutil

def setPath_getData():        
        # Set up folders for data
    newpath = r'userdata' 
    if not os.path.exists(newpath):
        os.makedirs(newpath)
        os.makedirs('userdata/sleep')
        os.makedirs(r'userdata/distance')
        os.makedirs(r'userdata/steps')
        os.makedirs(r'userdata/lightly')
        os.makedirs(r'userdata/mod')
        os.makedirs(r'userdata/sedentary')
        os.makedirs(r'userdata/very')
        os.makedirs(r'userdata/heart-rate-zone')
        os.makedirs(r'userdata/heart-rate')
        
        
            # Get data from fitbit
        filenames = os.listdir("user-site-export")
        unique_filenames = set()
        for f in filenames:
            unique_filenames.add(f.split("-")[0])
        
        source = os.listdir('user-site-export/')
        dest = '/userdata/sleep/'
        
        for file in source:
            if file.startswith('sleep'):
                shutil.copy(file, dest)
            
            #ls userdata/
    print("Data loaded successfully")

setPath_getData()

它给出的错误是:

FileNotFoundError: [Errno 2] No such file or directory: 'sleep-2020-01-09.json'

所以看起来它正在获取正确的文件,但它没有将它们复制到目标。有什么想法吗?

复制命令中必须在文件变量前指定源路径: shutil.copy(os.path.join("user-site-export", file), dest)