日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python實(shí)現(xiàn)文件復(fù)制刪除

系統(tǒng) 2085 0

?用python實(shí)現(xiàn)了一個(gè)小型的工具。其實(shí)只是簡單地把debug 目錄下的配置文件復(fù)制到指定目錄,把Release下的生成文件復(fù)制到同一指定,過濾掉不需要的文件夾(.svn),然后再往這個(gè)指定目錄添加幾個(gè)特定的文件。

??? 這個(gè)是我的第一個(gè)python小程序。

??? 下面就來看其代碼的實(shí)現(xiàn)。

首先插入必要的庫:

            
import os 
import os.path 
import shutil 
import time, datetime


          

然后就是一大堆功能函數(shù)。第一個(gè)就是把某一目錄下的所有文件復(fù)制到指定目錄中:

            
def copyFiles(sourceDir, targetDir): 
if sourceDir.find(".svn") >0: 
return 
for file in os.listdir(sourceDir): 
sourceFile = os.path.join(sourceDir, file) 
targetFile = os.path.join(targetDir, file) 
if os.path.isfile(sourceFile): 
if not os.path.exists(targetDir): 
os.makedirs(targetDir) 
 if not os.path.exists(targetFile) or(os.path.exists(targetFile) and (os.path.getsize(targetFile) != os.path.getsize(sourceFile))): 
 open(targetFile, "wb").write(open(sourceFile, "rb").read()) 
 if os.path.isdir(sourceFile): 
 First_Directory = False 
 copyFiles(sourceFile, targetFile)


          

刪除一級(jí)目錄下的所有文件:

            
def removeFileInFirstDir(targetDir): 
for file in os.listdir(targetDir): 
targetFile = os.path.join(targetDir, file) 
if os.path.isfile(targetFile): 
os.remove(targetFile)


          

復(fù)制一級(jí)目錄下的所有文件到指定目錄:

            
def coverFiles(sourceDir, targetDir): 
for file in os.listdir(sourceDir): 
sourceFile = os.path.join(sourceDir, file) 
targetFile = os.path.join(targetDir, file) 
#cover the files 
if os.path.isfile(sourceFile): 
open(targetFile, "wb").write(open(sourceFile, "rb").read())


          

復(fù)制指定文件到目錄:

def moveFileto(sourceDir, targetDir):
shutil.copy(sourceDir, targetDir)

往指定目錄寫文本文件:

            
def writeVersionInfo(targetDir): 
open(targetDir, "wb").write("Revison:")


          

返回當(dāng)前的日期,以便在創(chuàng)建指定目錄的時(shí)候用:

            
def getCurTime(): 
nowTime = time.localtime() 
year = str(nowTime.tm_year) 
month = str(nowTime.tm_mon) 
if len(month) <2: 
month ='0'+ month 
day = str(nowTime.tm_yday) 
if len(day) <2: 
day ='0'+ day 
 return (year +'-'+ month +'-'+ day)


          

然后就是主函數(shù)的實(shí)現(xiàn)了:

            
if __name__ =="__main__": 
print "Start(S) or Quilt(Q) \n" 
flag = True 
while (flag): 
answer = raw_input() 
if'Q'== answer: 
flag = False 
elif 'S'== answer : 
formatTime = getCurTime() 
 targetFoldername ="Build "+ formatTime +"-01" 
 Target_File_Path += targetFoldername
 
 copyFiles(Debug_File_Path, Target_File_Path) 
 removeFileInFirstDir(Target_File_Path) 
 coverFiles(Release_File_Path, Target_File_Path) 
 moveFileto(Firebird_File_Path, Target_File_Path) 
 moveFileto(AssistantGui_File_Path, Target_File_Path) 
 writeVersionInfo(Target_File_Path+"\\ReadMe.txt") 
 print "all sucess" 
 else: 
 print "not the correct command"


          

??? 感覺是果然簡單, 不過簡單的原因是因?yàn)閹旌瘮?shù)豐富,語言基本特性的簡單真沒感覺出來。

我們?cè)賮砜匆粋€(gè)實(shí)例

本人一直用foobar2000作為音樂播放器,聽歌時(shí)候把自己喜歡的歌都會(huì)特別添加到一個(gè)播放列表。

自己用iphone,同步歌曲的時(shí)候需要用到itunes,而itunes卻沒有我用foobar2000的精選播放列表呢~

本人只好定期把播放列表的mp3文件拷貝到一個(gè)目錄,我用itunes只需同步這個(gè)目錄即可
(順便吐槽下itunes不好使,在后期我都直接用其他同步工具代替之)

播放列表是*.m3u格式的文本,用記事本打開可以看到mp3的絕對(duì)路徑。

直接貼代碼吧,寫得比較倉促,各位將就參考下即可:

            
#coding=gbk  
import sys, shutil, os, string 
mp3List = "F:\\My Documents\\mp3list\\默認(rèn)精選.m3u" 
destDir = "G:\\POP\\默認(rèn)精選" 
 
def cpFile(srcPath): 
  fileName = os.path.basename(srcPath) 
  destPath = destDir + os.path.sep + fileName 
  if os.path.exists(srcPath) and not os.path.exists(destPath): 
    print 'cp %s %s' % (srcPath,destPath) 
    shutil.copy(srcPath,destPath) 
 
if __name__ == '__main__': 
  f = file(mp3List, 'r') 
  lists = f.readlines() 
  for i in lists: 
    cpFile(string.strip(i)) 
     
  f.close() 


          


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 海盐县| 曲松县| 博罗县| 九龙县| 抚顺县| 五常市| 嵊州市| 南丰县| 广饶县| 鄂托克旗| 工布江达县| 安新县| 揭西县| 宜兴市| 康平县| 平江县| 金湖县| 章丘市| 蓝田县| 临泽县| 德清县| 铜陵市| 平定县| 柳州市| 平凉市| 柞水县| 格尔木市| 天津市| 舒兰市| 和林格尔县| 乐昌市| 莲花县| 镇江市| 马边| 施秉县| 凭祥市| 库伦旗| 同德县| 苍山县| 云和县| 墨竹工卡县|