1. 程式人生 > >python os.mkdir建立目錄失敗

python os.mkdir建立目錄失敗

起因

今天使用 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)。