我遇到了一個麻煩的問題,我的代碼一直無法弄清楚。基本上,我將文件從計算機上的本地目錄複製到Dropbox文件夾,該文件夾充當我和其他人的項目存儲庫。Shutil.copy IO Error2當目錄存在時
執行shutil.copy行時,我總是碰到IO錯誤。 Errno 2,N osuch文件或目錄。但是目錄和文件都存在。當我將目錄更改爲不同的/測試位置(我的代碼中的test_dir)時,代碼運行得非常好。任何見解將不勝感激。
import os, os.path
import re
import shutil
import sys
#File Location
directory_list = "path where files are located"
#Dropbox base directory:
dropbox = "path to dropbox directory"
test_dir = "path to test directory on my local machine"
sed_files = os.listdir(directory_list)
for i in sed_files:
#print i.split("BBB")[0]
#df
copy_dir = re.sub(r'XXX',r'_',i.split("BBB")[0])
copy_dir = re.sub(r'ZZZ',r'/',copy_dir)
copy_dir = dropbox + copy_dir + "/FIXED/"
if not os.path.exists(copy_dir):
os.makedirs(copy_dir)
shutil.copy(directory_list+i,copy_dir)
#print directory_list+i
#os.rename(copy_dir+i,copy_dir+i.split("BBB")[1])
回溯錯誤是:
Traceback (most recent call last):
File "copy_SE_files.py", line 25, in <module> shutil.copy(direcotry_list+i,copydir)
File "C:\Python27\ArcGIS10.1\lib\shutil.py", line 116, in copy copyfile(src,dst)
File "C:\Python27\ArcGIS10.1\lib\shutil.py", line 82, in copyfile with open(dst, 'wb') as fdst:
IOError: [Errno 2] No such file or directory: 'C:/Users/myusername/Dropbox/NASA_HyspIRI_Project/Field_Data/Spectra/CVARS/April2014/LemonTrees/04172014_SE_LemonTreeCanopy/SE_Files/SpectraZZZCVARSZZZApril2014ZZZLemonTreesZZZZ04172014XXXSEXXXLemonTreeCanopyZZZSEXXXFilesBBBCVARS_na_LemonTrees_Bareground1_4deg_Refl_00355.sed'
問題解決了由於堆棧溢出的敏銳眼睛。修改了行改爲:
shutil.copy(directory_list+i,'\\\\?\\'+os.path.abspath(copy_dir))
顯示回溯 –
添加了回溯。 – user1819274
http://stackoverflow.com/a/1880480/2141635 –