目的: 把一批文件,按照后綴名新建對應(yīng)的文件夾,并移動(dòng)相應(yīng)的文件到對應(yīng)的文件夾.實(shí)現(xiàn)文件的自動(dòng)歸類. import shutilimport ospath = '/Users/sk/Documents/script_project2_files'files = os.listdir(path)for f in files: end = f.split('.')[-1] if not os.path.exists(path + '/'+end): os.makedirs(path + '/'+end) shutil.move(path+'/'+f, path + '/'+end) # Python筆記 1. os.listdir(path),返回path下的所有文件名 2. shutil.move(a,b) 把文件從a路徑移動(dòng)到b路徑 3. os.path.exists() 判斷路徑是否存在,返回True或False4. os.makedirs() 創(chuàng)建文件夾 5. string.split() 分割字符串,返回的是一個(gè)list # 心路歷程1. path,指定路徑 2. os.listdir(path),讀出文件名 3. 條件判斷后綴名,進(jìn)行分類,對不同文件創(chuàng)建文件夾,并把同一類文件移入指定文件夾. 具象化想象問題,并在腦子中模擬解決.文件自動(dòng)歸類:有一堆不同后綴名的文件 1. 識別出不同后綴名的文件 2. 使用Python的某個(gè)庫將文件移動(dòng)到指定文件夾 如何移動(dòng)文件: 使用內(nèi)置模塊shutil.move歸類的規(guī)則: 自動(dòng)創(chuàng)建文件夾,并以后綴名作為文件夾名為了測試,降低任務(wù)的復(fù)雜度,可以先手動(dòng)新建文件夾并命名,只需做到移動(dòng)特定文件到匹配的文件夾即可 先思考主框架,然后再逐步填充, 完善遇到的問題: 文件格式為'xxx.xx',如何取出后面的xx呢? Python的基礎(chǔ)知識不夠扎實(shí),所以會(huì)遇到很多問題.卡在了這個(gè)問題上,沒有查到相關(guān)資料. > 問題解決string.split('.')[-1]先使用split以`.`進(jìn)行分割,返回的是一個(gè)list,然后取出最后一個(gè)分段 學(xué)會(huì)一些meta的知識點(diǎn),然后根據(jù)自己遇到的問題,進(jìn)行組合.凡是需要靈活組合的東西,都需要深入的理解之后,才可以進(jìn)行.為什么需要系統(tǒng)的學(xué)習(xí)?如果不經(jīng)過系統(tǒng)的學(xué)習(xí),你不知道你不知道.遇到問題,你甚至不知道關(guān)鍵詞是什么,很難順利找到解決方案.通過練習(xí)熟練的應(yīng)用編程語言提供的各種工具(庫,框架),很多時(shí)候一個(gè)問題有很多種解決方法,但是要找到一個(gè)最佳的解決方法不容易.只能通過慢慢積累. 相對路徑:'./' Unix下 路徑使用`/`分割 可以使用pycharm中的console對自己不熟悉的東西進(jìn)行測試 ``` >> import os >> os.path.exists('/Users') True >> os.path.exists('/Public') False ``` |
|