在 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)
我正在尝试将特定文件从一个文件夹复制到另一个文件夹,但出现错误,我不明白为什么:
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)