我們在使用程序開發(fā)的時(shí)候,一個(gè)優(yōu)秀的項(xiàng)目離不開目錄的管理,我們通常會(huì)在指定目下存放相同類型的文件,我們在這一節(jié)來學(xué)習(xí)如何在程序中創(chuàng)建目錄。
1. 創(chuàng)建一級目錄
在os模塊中存在創(chuàng)建目錄的函數(shù)os.mkdir(),它的語法格式為:
os.mkdir(path)
path為我們要?jiǎng)?chuàng)建的目錄名字,可以使用絕對路徑,也可以使用相對路徑。
在創(chuàng)建目錄之前我們先來學(xué)一個(gè)判斷目錄是否存在的函數(shù)os.path.exists(),它的語法格式為:
os.path.exists(path)
path為判斷是否存在的路徑,如果存在路徑返回True,反之返回False。
看下面的代碼:
import os if os.path.exists('test.txt'):#當(dāng)前目錄文件夾下存在該文件 print('該目錄存在')
輸出結(jié)果為:
該目錄存在
然后我們結(jié)合上面的判斷方式來創(chuàng)建目錄,代碼如下:
import osif not os.path.exists('一級目錄'): os.mkdir('一級目錄') print('創(chuàng)建完成') else: print('目錄已存在')
然后我們可以在當(dāng)前文件夾下看到該目錄,如下圖:
當(dāng)我們再次執(zhí)行這個(gè)程序的時(shí)候,則會(huì)輸出:
目錄已存在
2. 創(chuàng)建多級目錄
如果我們需要?jiǎng)?chuàng)建一個(gè)多級的目錄,可以使用os模塊中的os.makedirs()函數(shù),它的語法格式為:
os.makedirs(path)
我們通過程序來講解這種多級目錄創(chuàng)建方式。
代碼如下:
import os now = os.getcwd() os.makedirs('one\kiki\zizi') print('創(chuàng)建成功')
運(yùn)行之后我們來看一下我們當(dāng)前目錄下存在的一個(gè)目錄。
通過多級目錄的創(chuàng)建,我們在函數(shù)中填寫的路徑為相對路徑,它是在當(dāng)前目錄下依次創(chuàng)建多個(gè)目錄,首先創(chuàng)建了名為one的目錄,然后再one目錄里創(chuàng)建了kiki目錄,然后再創(chuàng)建了名為zizi的目錄。
3. 刪除目錄
刪除目錄使用os模塊中的os.rmdir()函數(shù),但這個(gè)函數(shù)只局限于要?jiǎng)h除的目錄中不存在子目錄或者文件,它的語法結(jié)構(gòu)如下:
os.rmdir(path)
刪除的時(shí)候可以使用相對路徑或者絕對路徑,代碼如下:
我們先寫一個(gè)程序創(chuàng)建2個(gè)目錄,然后通過兩種路徑方式來刪除它們,首先創(chuàng)建目錄代碼:
import os if not os.path.exists('一級目錄'): os.mkdir('一級目錄') os.mkdir('一級目錄kiki') print('創(chuàng)建完成')
文件如下:
刪除代碼如下:
import os os.rmdir('C:/Users/輕煙/PycharmProjects/untitled1/teach/一級目錄') os.rmdir('一級目錄kiki') print('刪除完成')
文件如下:
4. 總結(jié)
關(guān)于目錄的管理,我們一定要注意路徑是否正確,在完整的項(xiàng)目開發(fā)的時(shí)候盡量使用絕對路徑,保證程序的正確性,下面一個(gè)例題大家可以練習(xí)一下。
題目為:創(chuàng)建5個(gè)目錄且每層目錄中含有5個(gè)目錄 目錄名為128位隨機(jī)字母。
題解鏈接為:https://blog.dotcpp.com/a/65341
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:
一點(diǎn)編程也不會(huì)寫的:零基礎(chǔ)C語言學(xué)練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程
從零到寫出一個(gè)爬蟲的Python編程課程
只會(huì)語法寫不出代碼?手把手帶你寫100個(gè)編程真題的編程百練課程
信息學(xué)奧賽或C++選手的 必學(xué)C++課程
藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程
手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程