Python os.mkdir()與os.makedirs()的使用區別
今天工作中將hadoop文件同步到服務器磁盤,由于文件類別目錄較多,遷移文件時需要判斷是否存在
這里有兩個方法os.mkdir(path)和os.makedirs(path)
os.mkdir(path)他的功能是一級一級的創建目錄,前提是前面的目錄已存在,如果不存在會報異常,比較麻煩,但是存在即有他的道理,當你的目錄是根據文件名動態創建的時候,你會發現他雖然繁瑣但是很有保障,不會因為你的一時手抖,創建而創建了雙層或者多層錯誤路徑,
import os os.mkdir(’d:hello’) # 正常os.mkdir(’d:hellohi’) # 正常 # 如果d:hello目錄不存在# 則os.mkdir(’d:hellohi’)執行失敗os.makedirs(path)
單從寫法上就能猜出他的區別,他可以一次創建多級目錄,哪怕中間目錄不存在也能正常的(替你)創建,想想都可怕,萬一你中間目錄寫錯一個單詞.........
import os os.makedirs(’d:hello’) # 正常os.makedirs(’d:hellohi’) # 正常 # 如果d:hello目錄不存在# 則os.makedirs(’d:hellohi’) # 仍然正常
各有優缺點,根據自己需要選擇使用。
補充:Python中os.path和os.makedirs的運用(判斷文件或文件夾是否存在,創建文件夾)
import osimport numpy as npdata = np.array([1, 2, 3])if not os.path.exists('./data/'): print('# path not exists') os.makedirs('./data/') if not os.path.exists('./data/data.npy'): print('# data.npy not exists') np.save('./data/data.npy', data) print('# path exists? :', os.path.exists('./data/'))print('# data.npy exists? :', os.path.exists('./data/data.npy'))
運行結果:
# path not exists# data.npy not exists# path exists? : True# data.npy exists? : True
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方,望不吝賜教。
相關文章:
1. jsp網頁實現貪吃蛇小游戲2. SpringMVC+Jquery實現Ajax功能3. HTML5 Canvas繪制圖形從入門到精通4. JavaScript實現組件化和模塊化方法詳解5. .Net Core和RabbitMQ限制循環消費的方法6. 淺談SpringMVC jsp前臺獲取參數的方式 EL表達式7. ASP.NET MVC遍歷驗證ModelState的錯誤信息8. jsp+servlet簡單實現上傳文件功能(保存目錄改進)9. ASP中if語句、select 、while循環的使用方法10. asp(vbs)Rs.Open和Conn.Execute的詳解和區別及&H0001的說明
