Python 3.x 使用Python复制和粘贴具有相似但不精确名称的文件

Python 3.x 使用Python复制和粘贴具有相似但不精确名称的文件,python-3.x,Python 3.x,我有两个文件夹,每个文件夹有几个文件 文件夹1: abc_1600_efg.xlsx abc_1601_efg.xlsx abc_1602_efg.xlsx abc_1603_efg.xlsx 文件夹2: ijk_1600_xyz.xlsx ijk_1601_xyz.xlsx ijk_1602_xyz.xlsx ijk_1603_xyz.xlsx lmn_1600_tuv.xlsx lmn_1601_tuv.xlsx lmn_1602_tuv.xlsx lmn_1603_tuv.xlsx 假设每

我有两个文件夹,每个文件夹有几个文件

文件夹1:

  • abc_1600_efg.xlsx
  • abc_1601_efg.xlsx
  • abc_1602_efg.xlsx
  • abc_1603_efg.xlsx
  • 文件夹2:

  • ijk_1600_xyz.xlsx
  • ijk_1601_xyz.xlsx
  • ijk_1602_xyz.xlsx
  • ijk_1603_xyz.xlsx
  • lmn_1600_tuv.xlsx
  • lmn_1601_tuv.xlsx
  • lmn_1602_tuv.xlsx
  • lmn_1603_tuv.xlsx
  • 假设每个文件夹中的文件都是随机的,任何人都知道如何使用python 3.x从文件夹1中的文件“abc_1600_efg.xlsx”复制,然后让python搜索文件夹2中的相应文件(“ijk_1600_xyz.xlsx”)。标题的数字部分是需要匹配的键。然后我想将数据粘贴到文件“ijk_1600_xyz.xlsx”中(文件夹2有两个文件的编号相同,但我只需要找到“ijk_1600_xyz”文件)

    我想循环这个,这样就可以对文件夹1中的每个文件都执行此操作,从1600开始,然后是1601,然后是1602等等。我已经完成了复制和粘贴部分,我只是停留在搜索和匹配部分

    提前谢谢你。

    我还没查过 但有点像:

    import re,os
    for file1 in os.listdir(folder1):
           match=re.match('..._(\d+)_.*'),file1).group(1)
           for file2 in os.listdir(folder2):
               if ('_'+match+'_' in file2) :
                    ... copy ...  
    

    无论如何,你应该知道如何适应这些情况

    这是行不通的。请记住,folder2中没有以
    efg
    结尾的文件。例如,是,已修复。无论如何,这并不深刻,问题也不那么严重。