解决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的Django框架中manage命令的使用与扩展

【简介】 django-admin.py是Django的一个用于管理任务的命令行工具。本文将描述它的大概用法。 另外,在每一个Django project中都会有一个manage.py。...

python多线程操作实例

python多线程操作实例

一、python多线程 因为CPython的实现使用了Global Interpereter Lock(GIL),使得python中同一时刻只有一个线程在执行,从而简化了python解释...

python中的计时器timeit的使用方法

本文介绍了python中的计时器timeit的使用方法,分享给大家,具体如下: timeit 通常在一段程序的前后都用上time.time(),然后进行相减就可以得到一段程序的运行时间...

Win10下Python3.7.3安装教程图解

Win10下Python3.7.3安装教程图解

        到2019年初,Python3已经更新到了Python3.7.3,Python有两个大版本Pytho...

对Python中实现两个数的值交换的集中方法详解

如下所示: #定义两个数并赋值 x = 1 y = 2 #第1种方式:引入第三方变量 z = 0 z = x x = y y = z #第2种:不引入第三方变量 x = x+y...