• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Python实现文件复制删除

python 搞代码 4年前 (2022-01-07) 46次浏览 已收录 0个评论

本文通过2个具体的实例,给大家展示了如何使用Python实现文件的复制与删除,非常的简单实用,有需要的小伙伴可以参考下

 用python实现了一个小型的工具。其实只是简单地把debug 目录下的配置文件复制到指定目录,把Release下的生成文件复制到同一指定,过滤掉不需要的文件夹(.svn),然后再往这个指定目录添加几个特定的文件。

    这个是我的第一个python小程序。

    下面就来看其代码的实现。

首先插入必要的库:

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

然后就是一大堆功能函数。第一个就是把某一目录下的所有文件复制到指定目录中:

 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) 

删除一级目录下的所有文件:

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

复制一级目录下的所有文件到指定目录:

 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()) 

复制指定文件到目录:

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

往指定目录写文本文件:

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

返回当前的日期,以便在创建指定目录的时候用:

 def getCurTime(): now<a style="color:transparent">来源gao($daima.com搞@代@#码网</a>Time = time.localtime() year = str(nowTime.tm_year) month = str(nowTime.tm_mon) if len(month) <2: month + day if len(day) <2: return (year +'-'+ day) <pre></div><p>然后就是主函数的实现了:</p><div class="gaodaimacode"><pre class="prettyprint linenums"> 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" 

    感觉是果然简单, 不过简单的原因是因为库函数丰富,语言基本特性的简单真没感觉出来。

我们再来看一个实例

本人一直用foobar2000作为音乐播放器,听歌时候把自己喜欢的歌都会特别添加到一个播放列表。

自己用iphone,同步歌曲的时候需要用到itunes,而itunes却没有我用foobar2000的精选播放列表呢~

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

播放列表是*.m3u格式的文本,用记事本打开可以看到mp3的绝对路径。

直接贴代码吧,写得比较仓促,各位将就参考下即可:

 #coding=gbk import sys, shutil, os, string mp3List = "F:\\My Documents\\mp3list\\默认精选.m3u" destDir = "G:\\POP\\默认精选" 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() 

以上就是Python实现文件复制删除的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Python实现文件复制删除

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址