Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Python代码移动文件_Python_Move_Shutil - Fatal编程技术网

如何使用Python代码移动文件

如何使用Python代码移动文件,python,move,shutil,Python,Move,Shutil,我有5个文件,它们存在于5个不同的位置 我想最好用Python编写一段代码(我是新手),代码应该检查所有这5个文件夹,代码应该检查文件是否存在,如果存在,它应该将所有这些文件从不同位置移动到一个共享驱动器位置。我尝试了下面的URL并使用了import-shutil,这很有效,但这是针对从同一位置到另一位置的一个或多个文件。任何关于我如何做到这一点的建议、想法和建议都将不胜感激 试试Pathlib-> from pathlib import Path import shutil inp_file

我有5个文件,它们存在于5个不同的位置

我想最好用Python编写一段代码(我是新手),代码应该检查所有这5个文件夹,代码应该检查文件是否存在,如果存在,它应该将所有这些文件从不同位置移动到一个共享驱动器位置。我尝试了下面的URL并使用了import-shutil,这很有效,但这是针对从同一位置到另一位置的一个或多个文件。任何关于我如何做到这一点的建议、想法和建议都将不胜感激

试试Pathlib->

from pathlib import Path
import shutil

inp_file_paths = [Path('input_file_path_1'),
                  Path('input_file_path_2'),
                  Path('input_file_path_3')]

destination_path = Path('destination_path')


def check(inp_files):
    for file in inp_files:
        if file.exists() == False:
            print(f'file = {file.name} doesn\'t exists please check the path')
            inp_files.remove(file)
    return inp_files


def move_files(inp_files):
    try:
        for file in inp_files:
            dest_path = destination_path / file.name
            shutil.copy(file, dest_path)
    except Exception as e:
        print(f'Exception {e} occurred while moving the file {file.name}')


inp_file_paths = check(inp_file_paths)
move_files(inp_file_paths)

谈到如何在不编写任何代码的情况下解决问题的原则:

根据链接的代码,您可以一次复制一个文件。将该代码移动到函数中,可以轻松地将其重新用于许多不同的输入文件,甚至多个目标文件。您可以将要复制的文件和目标文件夹定义为参数


Python的
os
库非常适合于操作系统操作,比如检查,如果需要的话,举几个可能有用的例子。但这只是实现这一目标的一个工具,您可能会看到一些不同但有效的答案。

欢迎使用堆栈溢出!请拿起,阅读,和,并提供一个。“为我实现此功能”是本网站的主题。你必须做出诚实的尝试,然后问一个关于你的算法或技术的具体问题。为什么不起作用?你以为会发生什么?到底发生了什么?你是怎么修的?