解决python os.mkdir创建目录失败的问题

yipeiwu_com6年前Python基础

起因

今天使用 python os.mkdir创建目录时遇到的一个小问题:

feature_dir = os.path.join(os.getcwd(), 'system', 'feature')
if not os.path.exists(feature_dir):
 os.mkdir(feature_dir)

结果提示错误: OSError: [Errno 2] No such file or directory: '/home/hyb/hyb_speech/2_word/applications/system/feature'

原因

查了一下原因,发现是因为 feature 的上一级目录 system 也没有创建的缘故。

具体原因,如下:

1.mkdir( path [,mode] )

作用:创建一个目录,可以是相对或者绝对路径,mode的默认模式是0777。

如果目录有多级,则创建最后一级。如果最后一级目录的上级目录有不存在的,则会抛出一个OSError。

2.makedirs( path [,mode] )

作用: 创建递归的目录树,可以是相对或者绝对路径,mode的默认模式也是0777。

如果子目录创建失败或者已经存在,会抛出一个OSError的异常,Windows上Error 183即为目录已经存在的异常错误。如果path只有一级,与mkdir一样。

解决

解决方法:

1、先创建 system,再创建 feature;

2、直接使用 os.makedirs(feature_dir)。

以上这篇解决python os.mkdir创建目录失败的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python之指数与E记法的区别详解

不要把自乘得到幂(也称为求幂)和E记法弄混了 3**5表示3的5次幂,也就是3*3*3*3*3,等于243 3e5表示3乘以10的5次幂,也就是3*10*10*10*10*10,结果等于...

Python3的unicode编码转换成中文的问题及解决方案

这篇文章主要介绍了Python3的unicode编码转换成中文的问题及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 从别的地...

详解如何在python中读写和存储matlab的数据文件(*.mat)

背景 在做deeplearning过程中,使用caffe的框架,一般使用matlab来处理图片(matlab处理图片相对简单,高效),用python来生成需要的lmdb文件以及做test...

win7下 python3.6 安装opencv 和 opencv-contrib-python解决 cv2.xfeatures2d.SIFT_create() 的问题

1.Anaconda 安装python3.6 conda create -n match python=3.6 Python版本默认安装是 3.6.9 2.安装opencv 执行完毕后,...

python做反被爬保护的方法

网络爬虫,是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。但是当网络爬虫被滥用后,互联网上就出现太多同质的东西,原创得不到保护。于是,很多网站开始反网络爬...