Я пытаюсь скопировать файл,
>>> 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, сначала необходимо заменить пробелы и скобки:
/ Пользователи / alvinspivey / Документы / Рабочая область / 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)
Traceback (последний вызов был последним):
Файл "", строка 1, в
Файл "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/re.py", строка 151, в подпрограмме
вернуть _compile (шаблон, флаги) .sub (repl, string, count)
Файл "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/re.py", строка 244, в _compile
поднять ошибку, v # неверное выражение
sre_constants.error: несбалансированная скобка
Правильно ли я заменяю скобки?
Кроме того, при использовании re.escape () для этого файл возвращается неверно. Так что это не альтернатива.