在Python中,如何从集合比较中删除目录?比较两组目录删除不匹配的文件夹

2024-09-29 23:24:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个有新文件的目录1和一个有相同文件但较旧的目录2。我要移动目录1或目录2中不存在的任何文件夹,并且只保存与这两个位置匹配的文件:

这是我的密码:

def removeOldDirs():
    dir1 = os.listdir('/directory1')
    dir2 = os.listdir('/directory2')
    dir1 = set(dir1)
    dir2 = set(dir2)
    oldFolders = set(dir2).difference(dir1)
    os.chdir('/')
    shutil.move(oldFolders,'/old')
    print os.listdir('.')

我希望两个目录中不匹配的文件夹名都移动到“/old”文件目录。我听到一个错误说 TypeError: coercing to Unicode: need string or buffer, set found coercing to Unicode: need string or buffer, set found

有没有一个更'Python'的方式做这件事?我应该进行系统调用吗?你知道吗


Tags: 文件to目录文件夹stringosunicodeneed

热门问题