Im делает небольшую программу на python для копирования некоторых файлов. Мои имена файлов находятся в списке «selectedList».Скопировать файлы из списка Python
Пользователь выбрал источник "self.DirFilename" и пункт назначения "self.DirDest".
Я использую cp вместо shutil, потому что я читал, что затвор медленный.
Heres мой код:
for i in selectedList:
src_dir = self.DirFilename + "/" + str(i) + ".mov"
dst_dir = self.DirDest
r = os.system('cp -fr %s %s' % (src_dir, dst_dir))
if r != 0:
print 'An error occurred!'**
Я хотел бы копию искать исходный каталог для данного файла, а затем воссоздать структуру папок в пункте назначения, а также скопировать файл.
Любые предложения были бы полезными (как и любые очевидные ошибки, которые я делаю) - моя первая программа на питоне, и я почти там!
Благодаря Gavin
Чтобы избежать проблем и проблем безопасности с забавными неэкранированных символов (например, пробел), сделайте следующее: 'г = subprocess.call (('ф', '-fr', src_dir, dst_dir + '/')) ' – pts
FYI' shutil' медленный для копирования, потому что его размер буфера составляет всего 16K. Большой размер буфера может иметь большое значение, в соответствии с несколькими источниками (например, http://blogs.blumetech.com/blumetechs-tech-blog/2011/05/faster-python-file-copy.html). Для рекурсивных копий изменить размер буфера 'shutil' непросто. См. Ссылку выше для альтернативной реализации. Вероятно, огромная разница связана с различными шаблонами поиска дисков. – pts
Это не очевидно для меня, что вопрос здесь. – pts