我很困惑使用这两种os
方法来创建新目录。
请给我一些Python的例子。
makedirs()
如果它们不存在,则创建所有中间目录(就像mkdir -p
在 bash 中一样)。
mkdir()
可以创建单个子目录,如果指定了不存在的中间目录,则会抛出异常。
两者都可用于创建单个“叶”目录 (dirA):
os.mkdir('dirA')
os.makedirs('dirA')
但是必须使用 makedirs 来创建“分支”:
os.makedirs('dirA/dirB')
将工作[创建整个结构]mkdir
如果 已经存在,则可以在这里工作dirA
,但如果不存在,则会引发错误。
请注意,与mkdir -p
bash 不同,如果叶子已经存在,则两者都将失败。
(不能评论,只是添加到 NPE 的答案。)
在 Python3 中,os.makedirs
有一个默认参数exist_ok=False
。
如果将其设置为True
,则如果叶子存在,则不会os.makedirs
抛出任何异常。
(虽然没有这个参数。)os.mkdir
像这样:
os.makedirs('dirA', exist_ok=True)
PS
您可以?
在 IPython shell 中的方法名称前键入以快速查看文档。
例如:
>>> import os
>>> ? os.makedirs