Файлы не будут перемещаться при получении ввода от пользователя (shutil.move и os.walk)? - PullRequest
0 голосов
/ 14 мая 2019

Я пытаюсь переместить файлы из одного каталога в другой.Он перемещается нормально, когда я указываю правильное местоположение с кавычками -> (""), но когда я пытаюсь получить местоположение от пользователя, цикл работает правильно, и ошибки не отображаются, но файлы не перемещаются.

Также добавление разрыва в конце цикла предотвратит shutil.Error, который говорит, что файлы уже существуют в каталоге?Спасибо!Вот код:

Я попытался сравнить оба, один из входных данных и указанный, оба равны.

import os
import shutil

old_folder = input("\nWhich directories you want to check?\n\t(Copy"
                       " the exact location for eg: '\C:\example\example'): \n")

ending = input("\nWhat type of files you want to be moved? \n\t(for"
                   " eg: '.pdf', '.jpg', '.png'): \n")

dst = input("\nWhere do you want it to be moved?\n\t(Copy the exact"
                " location for eg: '\C:\example\example'): \n")

# Walk through the given directory as long as loop runs.
for root, dirs, files in os.walk(old_folder):
    for file in files:

        #Search for files with specific extension.
        if file.endswith(ending):
            path = os.path.join(root, file)
            # Move the files to the given folder of destination.
            shutil.move(path, dst)
    break

Я ожидаю, что файлы будут перемещены без каких-либо ошибок после получения вводаот пользователя.

...