Python 3.x 基于文件名将文件移动到特定文件夹

Python 3.x 基于文件名将文件移动到特定文件夹,python-3.x,file-move,Python 3.x,File Move,假设我有一个文件夹结构和路径,如下所示: C:\Data\Defenders\prep C:\Data\Defenders\final C:\Data\Strikers\prep C:\Data\Strikers\final Defenders1345_12345_A_Data_Defender.xlsx Strikers1002_12387_A_Data_Strikers.xlsx 我有一个文件名如下: C:\Data\Defenders\prep C:\Data\Defenders\fi

假设我有一个文件夹结构和路径,如下所示:

C:\Data\Defenders\prep
C:\Data\Defenders\final
C:\Data\Strikers\prep
C:\Data\Strikers\final
Defenders1345_12345_A_Data_Defender.xlsx
Strikers1002_12387_A_Data_Strikers.xlsx
我有一个文件名如下:

C:\Data\Defenders\prep
C:\Data\Defenders\final
C:\Data\Strikers\prep
C:\Data\Strikers\final
Defenders1345_12345_A_Data_Defender.xlsx
Strikers1002_12387_A_Data_Strikers.xlsx
如何移动这些文件?例如,如果此文件夹中有此文件:

C:\Data\Defenders\prep\Defenders1345_12345_A_Data_Defender.xlsx
C:\Data\Defenders\final
要访问此文件夹,请执行以下操作:

C:\Data\Defenders\prep\Defenders1345_12345_A_Data_Defender.xlsx
C:\Data\Defenders\final
我知道我可以使用以下硬编码方式完成:

shutil.move(r'C:\Data\Defenders\prep\Defenders1345_12345_A_Data_Defender.xlsx',r'C:\Data\Defenders\final')

但我不想这样做,因为我有这么多不同名称的文件。是否有一种方法可以根据文件名移动此文件。例如,如果文件名以防守者开头,则将其移动到
C:\Data\Defenders\final
;如果文件名以删除者开头,则将其移动到
C:\Data\Strikers\final

,您需要问三个问题:1。如何获取目录中的所有
.xlsx
文件?2.我如何判断文件名是以“防御者”开头还是以“罢工者”开头?3.在给定所有这些信息的情况下,如何创建目标文件路径?然后编写完成上述每一项工作的python代码。如果你把一个大任务分解成小任务,编程就很简单了。如果您在尝试后有一个特定的问题,请将您的问题包括在内,并提出该特定的问题。“为我实现这一点”在这里是离题的。请阅读,和Hi@PranavHosangadi,我接受了您的建议,我得到了一个使用文件名和if条件的解决方案,并使用startwith()函数。也许你可以关上这个。谢谢!