解决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读取一个目录下所有目录和文件的方法

本文实例讲述了Python读取一个目录下所有目录和文件的方法。分享给大家供大家参考,具体如下: 这里介绍的是刚学python时的一个读取目录的列子,给大家分享下: #!/usr/bi...

使用Python完成15位18位身份证的互转功能

使用Python完成15位18位身份证的互转功能

  最近工作中刚好要清洗一批客户数据,涉及到身份证号码15位和18位的转换,特意研究了下,在这里分享下。 身份证号码的构成 既然谈到了身份证转换,那就需要先了解下证件号码的构成...

python:动态路由的Flask程序代码

python:动态路由的Flask程序代码

如下所示: # Copyright (c)2018, 东北大学软件学院学生 # All rightsreserved # 文件名称:a.py # 作 者:孔云...

PyQt Qt Designer工具的布局管理详解

PyQt Qt Designer工具的布局管理详解

前言 这节课很重要。。界面整洁美观与否就看布局了。。这里讲布局方法,至于设计的天赋与最终界面的美感那就看造化了。。 本文主要讲述Qt Designer工具实现界面控件布局管理,就是排列组...

对python3.4 字符串转16进制的实例详解

如下所示: def str_to_hex(s):     s = s.split(' ')     send_buf =...