用Python递归创建文件/文件夹?

1 投票
3 回答
6883 浏览
提问于 2025-04-17 21:09

我想用Python写一个脚本,能够在某个位置递归地创建一定数量的文件夹。举个例子,我想用一个循环来创建folder1、folder2、folder3这些文件夹,放在C:\Temp这个路径下。我觉得用循环是最好的办法,可能还需要用到os这个模块?如果有人能帮忙就太好了!

3 个回答

1

从Python 3.4开始,你可以使用pathlib这个工具来创建一个文件夹,以及它的所有上级文件夹。

from pathlib import Path

Path("my/path/to/create").mkdir(parents=True, exist_ok=True)

如果你希望在文件夹已经存在的情况下抛出错误,可以把exist_ok设置为False

1

下面是如何递归地创建一个文件夹,然后在这个文件夹里创建一个文件的方法。

from pathlib import Path
import os

folder_path = Path(os.getcwd() + os.path.join('\my\folders')) #define folder structure
if not os.path.exists(path):   # create folders if not exists
    os.makedirs(path)

file_path = os.path.join(path, 'file.xlsx')  # add file to the folder path
f= open(file,"w+")                           # open in w+(write mode) or a+(append mode)
3

你可以看看 makedirs 这个链接。它可能会对你有帮助。

撰写回答