Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
339 views
in Technique[技术] by (71.8m points)

python - What is different between makedirs and mkdir of os?

I am confused to use about these two osmethods to create the new directory.

Please give me some example in Python.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

makedirs() creates all the intermediate directories if they don't exist (just like mkdir -p in bash).

mkdir() can create a single sub-directory, and will throw an exception if intermediate directories that don't exist are specified.

Either can be used to create a single 'leaf' directory (dirA):

  • os.mkdir('dirA')
  • os.makedirs('dirA')

But makedirs must be used to create 'branches':

  • os.makedirs('dirA/dirB') will work [the entire structure is created]

mkdir can work here if dirA already exists, but if it doesn't an error will be thrown.

Note that unlike mkdir -p in bash, either will fail if the leaf already exists.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...