【问题标题】:Creating files/folders recursively in python?在python中递归创建文件/文件夹?
【发布时间】:2014-04-09 10:18:03
【问题描述】:

我希望能够在 python 中编写一个脚本,该脚本将递归地创建一定数量的文件/文件夹到某个位置。因此,例如,我想要某种 for 循环,它将创建 folder1、folder2、folder3 到路径 C:\Temp。我认为 for 循环是执行此操作的最佳方法并且还使用 os 吗?任何帮助都会很棒!

【问题讨论】:

  • for 循环 != 递归

标签: python recursion directory


【解决方案1】:

看看makedirs。它可能会有所帮助。

【讨论】:

  • 只要确保捕获来自makedirs 的异常。如果出于任何原因无法创建所有目录,它将引发一个......但如果叶目录在运行之前存在
  • in os.makedirs(path[, mode]) 模式是什么意思?预计会发生什么?
【解决方案2】:

以下是如何递归创建文件夹,然后在该文件夹中创建文件。

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)

【讨论】: