【发布时间】:2021-07-08 18:14:23
【问题描述】:
我在另一个文件中托管了一系列文件。这些文件涉及各种烹饪菜肴,并存放在一个名为“cocina”的文件中。我附上图片:
我想做的是将所有名为“carnes-meat_type”的文件移动到另一个文件夹,托管在同一位置,称为“carnes”。但是,当我使用shutil.move 时,不知道为什么,名称为“carnes-anade”的文件消失了,只出现了这个文件的内容。为了便于理解,我添加了一张图片:
正如您在图片中看到的,该文件(我称之为“carnes”)包含所有涉及肉类类型的文件夹和两个 .txt 文件。这两个文件是文件夹“carnes-anade”中的文件,我不明白为什么这个文件夹消失了,只有它的文件仍然存在,而我唯一要做的就是移动文件夹。
我添加了我使用过的代码:
import re
import os
import shutil
for root, dirs, files in os.walk(root_path):
for dire in dirs:
if re.findall(r'carnes-', dire):
shutil.move(os.path.join(root_path, dire),
os.path.join(root_path, 'carnes'))
其中“root_path”指的是主文件夹,即“cocina”,即其他菜品文件夹所在的位置。我所做的是通过re.findall() 函数搜索所有具有字符串“carnes-”的文件并将它们移动到“carnes”文件夹,该文件夹是在我运行代码后直接创建的。
有人知道会发生什么吗?
提前致谢。
【问题讨论】:
标签: python directory operating-system subdirectory shutil