Переименование файла в другой диск - PullRequest
0 голосов
/ 15 сентября 2018

Мой скрипт на python находится в разделе D, и я хочу переименовать файлы в папках в разделе E:

Я не могу переместить папку / файлы в D из-за ограниченного пространства.

path= "E:\\A" 

for f in os.listdir(path):

    f_name, f_ext = os.path.splitext(f)

    empty, f_number, f_title = (f_name.split('_'))
    f_title = f_title.strip()

    if len(f_number) == 2:
        f_number = '0' + f_number

   f_filename = '_{}_{}{}'.format(f_number, f_title, f_ext)
   file = os.path.join(path, f)
   os.rename(file, f_filename)

Я получаю ошибку:

[WinError 17] Система не может переместить файл на другой диск диск:

Я нашел ответ здесь, чтобы использовать shutils. Итак, я попробовал:

 src = os.path.join(path, f)  
 path2 = "E:\\A2"   
 dst = os.path.join(path2, f_filename)    
 shutil.move(src, dst)

[Errno 2] Нет такого файла или каталога: «E: \ A2 \ filename»

Это странно, потому что я беру файл из А и перемещаю его в А2 с новым именем файла, поэтому явно не существует в А2.

1 Ответ

0 голосов
/ 15 сентября 2018

Судя по сообщению об ошибке, я подозреваю, что проблема в том, что вы пытаетесь переместить эти файлы в каталог "A2" до его создания.Если A2 еще не существует, вы можете создать его, используя os.mkdir.

См. Этот вопрос для получения более подробной информации об этом.

...