Python中os.mkdir()与os.makedirs()的区别及用法
今天写代码遇到创建目录,一开始使用os.mkdir(path)一直报错,在别的地方查找了好久,一直以为这里是没问题的。结果到最后在一个帖子里瞄见了os.makedirs()的写法,突然感觉可能错误就在这里,结果一试才发现,果不其然,想当然的东西有时候往往是罪魁祸首,也给自己一个警示。以下为代码:
#-*-coding:utf-8-*-
import os
path_01 = 'Test\\path_01\\path_02\\path_03'
try:
os.mkdir(path_01)
print u'第一次创建成功!'
except:
print u'第一次创建失败!'
try:
os.makedirs(path_01)
print u'第二次创建成功!'
except:
print u'第二次创建失败!'
运行结果:
第一次创建失败!
第二次创建成功!
os.mkdir()创建路径中的最后一级目录,即:只创建path_03目录,而如果之前的目录不存在并且也需要创建的话,就会报错。os.makedirs()创建多层目录,即:Test,path_01,path_02,path_03如果都不存在的话,会自动创建,但是如果path_03也就是最后一级目录已存在的话就会抛出FileExistsError异常。