使用 Python 复制文件

Copy Files Using Python

我正在尝试将文件从当前目录复制到当前目录中新创建的文件夹。文件夹名称是脚本使用时间模块运行的确切日期和时间。我正在尝试使用 shutil 模块,因为似乎每个人都说这是将文件从一个地方复制到另一个地方的最佳方式,但我一直收到权限错误。我在下面粘贴了代码和错误。有什么建议么?提前致谢。

import os
import time
from shutil import copyfile

oldir = os.getcwd()
print(oldir)
timestr = time.strftime("%Y%m%d-%H%M%S")
print('timestr: {}'.format(timestr))
newdir = os.path.join(oldir + "\" + timestr)
print(newdir)


for filename in os.listdir(os.getcwd()):
    if filename.startswith("green"):
        print (filename)
        copyfile(oldir, newdir)

错误:

Traceback (most recent call last):
  File "\directory\directory\Testing1.py", line 16, in <module>
    copyfile(oldir, newdir)
  File "C:\Python36-32\lib\shutil.py", line 120, in copyfile
    with open(src, 'rb') as fsrc:
PermissionError: [Errno 13] Permission denied: '\\directory\directory'

您需要先创建目录,然后在复制时,使用起始文件和结束文件的完整路径

import os
import time
from shutil import copyfile

oldir = os.getcwd()
print(oldir)
timestr = time.strftime("%Y%m%d-%H%M%S")
print('timestr: {}'.format(timestr))
newdir = os.path.join(oldir + "\" + timestr)
print(newdir)

if not os.path.exists(newdir):
    os.makedirs(newdir)

for filename in os.listdir(os.getcwd()):
    if filename.startswith("green"):
        print (filename)
        copyfile(oldir+"\"+filename, newdir + "\" + filename)