摘要:所以在此提醒和指出指出,這里的分別指每一次循環時當前文件夾自己本身當前文件夾的子文件夾當前文件下的文件。模塊用于復制移動改名刪除文件,提醒可刪除非空文件非空文件夾。第一次寫博客,不足之處,還請輕噴指正
練手小項目二:指定目錄樹下,選擇性拷貝指定類型文件,至指定的一個文件夾
"""此函數作用:選擇性復制某目錄樹下的指定擴展名文件至指定同一目錄""" #coding: utf-8 import os,shutil #定義函數 def cp_file(orig,dest,kind): result=[];i=0 for folder,subfolders,files in os.walk(orig): for file in files: if(file.endswith("."+kind)): f=os.path.join(folder,file) result.append(f) print result for k in result: shutil.copy(k,dest);i+=1;print("copying",k); return i #自測用例 #輸入abc時,按照如下格式(轉義反斜杠):E:mypractice,C:Users39419Desktoppic,jpg a=raw_input("source:") if os.path.exists(a) ==False: print(a,"is a false source"); b=raw_input("destination: ") if os.path.exists(b)==False: os.makedirs(b) print("have created the selected path: ",b); c=raw_input("kind of file :") #正式調用函數 t=cp_file(a,b,c) print(" have copied ",t,"files")
總結反思:
1、之前由于對os.walk()的理解不透徹,導致if代碼塊下的路徑一直糾結不對,運行結果為0。所以在此提醒和指出指出,這里的folder、sunfolder、file分別指每一次for循環時當前文件夾自己本身、當前文件夾的子文件夾、當前文件下的文件。
2、shutil模塊用于復制移動改名刪除文件,提醒:可刪除非空文件、非空文件夾。而os模塊只能刪除空文件夾,文件不管空與否,皆可刪。
3、構建有效路徑的方式:a 直接賦值變量,如自測用例;b 調用os.path.join()來實現,如函數體中所示。
ps:第一次寫博客,不足之處,還請輕噴指正:-D
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/41269.html
摘要:并非所有平臺都能檢查和修改軟鏈接,能告訴用戶本地平臺可使用哪些功能。當為且為軟鏈接時,將作為軟鏈接被創建并拷貝的所有元數據到。原始如果存在則被直接覆蓋是軟鏈接文件,是普通文件或軟鏈接文件,移動并重命名為,指向的真實文件為之前指向的源文件。 shutil模塊提供了一些針對文件和目錄的高級操作,主要是拷貝、移動。對于單個文件的操作,還可參考os模塊 Warning:即使是高級別的拷貝函數(...
摘要:是否則檢驗指定的對象是否存在。由于的模塊實現主要調用庫,所以各個平臺可能有所不同。時間格式時間戳的方式通常來說,時間戳是指格林威治時間年月日時分秒北京時間年月日時分秒起至現在的總秒數。元組方式元組共有個元素,返回的函數主要有,,。 os模塊 os模塊提供了多數操作系統的功能接口函數。當os模塊被導入后,它會自適應于不同的操作系統平臺,根據不同的平臺進行相應的操作,在python編程時,...
閱讀 2804·2021-11-19 11:35
閱讀 2582·2021-11-02 14:40
閱讀 1396·2021-09-04 16:48
閱讀 3009·2019-08-30 15:55
閱讀 1756·2019-08-30 13:11
閱讀 1956·2019-08-29 11:12
閱讀 1088·2019-08-27 10:52
閱讀 3157·2019-08-26 18:36