用Python递归创建文件/文件夹?
我想用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 这个链接。它可能会对你有帮助。