我一直在尝试编写一些python代码,以便从.txt文件中获取每一行,并在文件夹及其子文件夹中搜索具有该名称的文件。在此之后,我想在一个预设的目标文件夹中移动该文件。你知道吗
我已经尝试了以下代码,这是张贴在堆栈溢出,但它似乎不工作,我无法找出正确的方法有什么问题吗非常感谢您的帮助:
import os
import shutil
def main():
destination = '/Users/jorjis/Desktop/new'
with open('/Users/jorjis/Desktop/articles.txt', 'r') as lines:
filenames_to_copy = set(line.rstrip() for line in lines)
for root, _, filenames in os.walk('/Users/jorjis/Desktop/folder/'):
for filename in filenames:
if filename in filenames_to_copy:
shutil.copy(os.path.join(root, filename), destination)
如果没有任何调试输出(您现在已经获得),我只能猜测
os.walk
的一个常见陷阱:filenames
中返回的文件名就是没有任何路径的文件名。如果文件包含的文件名的路径永远不匹配。改用这个:相关问题 更多 >
编程相关推荐