我有一个有新文件的目录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'的方式做这件事?我应该进行系统调用吗?你知道吗
你知道吗shutil.移动接受两个参数:src文件/目录和目标文件/目录。 如果您有一个文件/目录列表(或您的案例集),您只需执行以下操作:
相关问题 更多 >
编程相关推荐