ファイルをコピーしようとしていますが、
>>> originalFile = '/Users/alvinspivey/Documents/workspace/Image_PCA/spectra_text/HIS/jean paul test 1 - Copy (2)/bean-1-aa.txt'
>>> copyFile = os.system('cp '+originalFile+' '+NewTmpFile)
ただし、 open 関数が機能する前に、最初にスペースと括弧を置き換える必要があります。
/Users/alvinspivey/Documents/workspace/Image_PCA/spectra_text/HIS/jean\ paul\ test\ 1\ -\ Copy\ \(2\)/bean-1-aa.txt
スペース ' ' --> '\ ' 括弧 '(' --> '\(' など
スペースの作業を置き換える:
>>> originalFile = re.sub(r'\s',r'\ ', os.path.join(root,file))
しかし、括弧はエラーを返します:
>>> originalFile = re.sub(r'(',r'\(', originalFile)
トレースバック (最新の呼び出しが最後): ファイル ""、1 行目、ファイル "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/re.py"、151 行、sub return _compile( pattern, flags).sub(repl, string, count) File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/re.py", line 244, in _compile raise error, v # invalid式 sre_constants.error: 括弧のバランスが取れていません
括弧を正しく置き換えていますか?
また、これに re.escape() を使用すると、ファイルが正しく返されません。したがって、代替手段ではありません。