У меня есть две папки: In, Out - это не системная папка на диске D: - Windows 7. Out содержит "myfile.txt" Я выполняю следующую команду в python:
>>> shutil.copyfile( r"d:\Out\myfile.txt", r"D:\In" )
Traceback (most recent call last):
File "<pyshell#39>", line 1, in <module>
shutil.copyfile( r"d:\Out\myfile.txt", r"D:\In" )
File "C:\Python27\lib\shutil.py", line 82, in copyfile
with open(dst, 'wb') as fdst:
IOError: [Errno 13] Permission denied: 'D:\\In'
В чем проблема?
Это происходит, потому что Python пытается переименовать каталог в том же пути Ваших файлов. Просто проверьте, является ли это каталог или файл!
import os
path="abc.txt"
if os.path.isfile(path):
#do yor copy here
print("\nIt is a normal file")
Или
if os.path.isdir(path):
print("It is a directory!")
else:
#do yor copy here
print("It is a file!")