如何递归地创建目录?

25 浏览
0 Comments

如何递归地创建目录?

这个问题已经有了答案

如何安全地递归地创建目录(可能包括中间目录)?

是否有一个Python方法来递归地创建文件夹?我有这个路径:

/home/dail/

我想要创建

/home/dail/first/second/third

我可以递归地做还是要一个一个地创建文件夹?

同样的事情也适用于:

chmodchown,我可以递归地做而不需要为每个文件/目录分配权限吗?

admin 更改状态以发布 2023年5月21日
0
0 Comments

os.makedirs 是你需要的。对于 chmodchown,你必须使用 os.walk 并自行对每个文件/目录进行操作。

0
0 Comments

从Python 3.2开始,您可以这样做:

import os
path = '/home/dail/first/second/third'
os.makedirs(path, exist_ok=True)

由于exist_ok标志,如果目录已经存在,这甚至不会抱怨(取决于您的需要...)。


从Python 3.4开始(其中包括pathlib模块),您可以这样做:

from pathlib import Path
path = Path('/home/dail/first/second/third')
path.mkdir(parents=True)


从Python 3.5开始mkdir也有一个exist_ok标志 - 将其设置为True将不会引发异常,如果目录存在:

path.mkdir(parents=True, exist_ok=True)

0