python遞歸創(chuàng )建文件 DATE: 2026-05-05 08:33:55
在Python中,遞歸我們可以使用os模塊的創(chuàng )建os.makedirs()??函數來(lái)遞歸地創(chuàng )建目錄,這個(gè)函數會(huì )自動(dòng)創(chuàng )建所有必要的文件中間目錄,這使得它比單獨使用os.mkdir()或os.mkdirs()函數更為方便。遞歸
(圖(tu)片來(lái)源網(wǎng)絡(luò ),創(chuàng )建侵刪)解析:
1、文件(?Д?)我們需要導入
2、創(chuàng )建我們定義一個(gè)函數,文件該函數(shu)接受一個(gè)參數,遞歸即我們要創(chuàng )建的創(chuàng )建目錄的路徑。
3、文件在這個(gè)函數中,遞歸我們使用os.path.exists()函數來(lái)檢查路徑是創(chuàng )建否已經(jīng)存在,如果路徑已經(jīng)存在,文件我們就不需要再創(chuàng )建了。
4、如果路徑不存在,我們就調用os.makedir(?Д?)s()函數來(lái)創(chuàng )建目錄。
代碼如下:
import osdef create_directory(path): if not os.path.exists(path): os.makedirs(path)
這個(gè)函數可以用來(lái)創(chuàng )建任何你需要的目錄,如(?_?;)果你想創(chuàng )建一個(gè)名為"my_directory"的目錄,你可以這樣調用這個(gè)函數:
create_directory("my_directory")如果你需要創(chuàng )建一個(gè)包含子目錄的復雜目錄結構,你只需要在路徑字(⊙_⊙)符串中包含這些子目錄即可,下??面的代碼將創(chuàng )建一個(gè)名為"my_directory"的(de)目錄,該目錄包含兩個(gè)子??目錄"sub_directory1"和"sub_directory2":
cヽ(′ー`)ノre(/ω\)ate_directory("my_directory/sub_directory1/sub_directory2")注意,os.makedirs()函數默認會(huì )拋出一個(gè)異常,如果目錄已經(jīng)存在,為了避免這個(gè)問(wèn)題,我們在調用os.makedirs()之前先檢查路徑是否存在,如果你確??定路徑不會(huì )已經(jīng)存在,或者你愿意忽略這個(gè)異常,你也可以直接調用os(′ω`).makedirs(),不進(jìn)行存在性檢查。
os.makedirs()函數還有一個(gè)可選的參數exist_ok,如果設置為T(mén)rue,(′ω`)那么當目錄已經(jīng)存在時(shí),os.makedirs()不會(huì )拋出異常,你也可以這樣寫(xiě)你的函數:
import osdef create_directory(path): os.makedirs(path, exist_ok=T??rue)這樣??,無(wú)論你的路徑是否已經(jīng)存在,os.makedirs()都不會(huì )拋出異常,如果你在一個(gè)已經(jīng)存在的路徑上調用這個(gè)函數,它仍然??會(huì )創(chuàng )建一個(gè)新的目錄,這可能會(huì )導致一些意想不到的結果,通常來(lái)說(shuō),最好在使用os.makedirs()之前先檢查路徑是否存在。

