起因
今天使用 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創建目錄失敗的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答