如何检查两个目录中的相同文件名是否匹配,并使用python将其追加?

如何检查两个目录中的相同文件名是否匹配,并使用python将其追加?,python,dataframe,string-matching,fnmatch,Python,Dataframe,String Matching,Fnmatch,我有两个目录和多个文件(读为CSV)。文件名表示特定的客户编号。 我阅读了以下文件 我以CSV格式读取这些文件 如果directory2文件名(文件)与directory1中的文件名匹配,则我希望将数据作为一个文件附加在一起 如果文件名(文件)不在directory1中,则按原样复制数据 此新文件应保存到新目录中 你能试一下吗 import os import glob import shutil dir1 = "/path/to/dir1/" dir2 = "/path/to/dir2/"

我有两个目录和多个文件(读为CSV)。文件名表示特定的客户编号。 我阅读了以下文件

我以CSV格式读取这些文件

如果directory2文件名(文件)与directory1中的文件名匹配,则我希望将数据作为一个文件附加在一起

如果文件名(文件)不在directory1中,则按原样复制数据

此新文件应保存到新目录中


你能试一下吗

import os
import glob
import shutil

dir1 = "/path/to/dir1/"
dir2 = "/path/to/dir2/"
new_dir = "/path/to/dir3/"
fpaths_dir1 = glob.glob(os.path.join(dir1, '*.csv'))
fpaths_dir1 = [os.path.basename(fpath) for fpath in fpaths_dir1]
fpaths_dir2 = glob.glob(os.path.join(dir2, '*.csv'))
fpaths_dir2 = [os.path.basename(fpath) for fpath in fpaths_dir2]

for fpath in fpaths_dir1:
    if fpath in fpaths_dir2:
        f1 = os.path.join(dir1, fpath)
        f2 = os.path.join(dir2, fpath)
        # write your code to open both files
        # and contatenate
    else:
        f1 = os.path.join(dir1, fpath)
        f3 = os.path.join(new_dir, fpath)
        shutil.copyfile(f1, f3)

将数据作为一个文件附加在一起
我将其留给您,如果有任何问题,请告诉我。

如何在1000个文件中打开两个匹配的文件名?
f1
f2
是匹配的文件,您只需将这些文件连接起来即可
import os
import glob
import shutil

dir1 = "/path/to/dir1/"
dir2 = "/path/to/dir2/"
new_dir = "/path/to/dir3/"
fpaths_dir1 = glob.glob(os.path.join(dir1, '*.csv'))
fpaths_dir1 = [os.path.basename(fpath) for fpath in fpaths_dir1]
fpaths_dir2 = glob.glob(os.path.join(dir2, '*.csv'))
fpaths_dir2 = [os.path.basename(fpath) for fpath in fpaths_dir2]

for fpath in fpaths_dir1:
    if fpath in fpaths_dir2:
        f1 = os.path.join(dir1, fpath)
        f2 = os.path.join(dir2, fpath)
        # write your code to open both files
        # and contatenate
    else:
        f1 = os.path.join(dir1, fpath)
        f3 = os.path.join(new_dir, fpath)
        shutil.copyfile(f1, f3)